diff --git a/test/FritzCallMonitor.Tests/ReconnectTcpClientTest.cs b/test/FritzCallMonitor.Tests/ReconnectTcpClientTest.cs index 3879ac0..9ec7044 100644 --- a/test/FritzCallMonitor.Tests/ReconnectTcpClientTest.cs +++ b/test/FritzCallMonitor.Tests/ReconnectTcpClientTest.cs @@ -81,16 +81,21 @@ namespace FritzCallMonitor.Tests // Arrange var client = GetClient(); await client.StartAsync(TestContext.CancellationTokenSource.Token); + await Task.Delay(ASYNC_DELAY, TestContext.CancellationTokenSource.Token); // Act client.Dispose(); // Assert - _tcpClientMock.Verify(m => m.Dispose(), Times.Once); + _socketMock.Verify(m => m.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.KeepAlive, true), Times.Once); + _tcpClientMock.VerifyGet(m => m.Client, Times.Once); + _tcpClientMock.VerifyGet(m => m.Connected, Times.Once); + _tcpClientMock.Verify(m => m.GetStream(), Times.Once); + _tcpClientMock.Verify(m => m.Dispose(), Times.Once); _tcpClientMock.Verify(m => m.ConnectAsync(HOST, PORT, It.IsAny()), Times.Once); - _socketMock.Verify(m => m.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.KeepAlive, true), Times.Once); + _networkStreamMock.Verify(m => m.ReadAsync(It.IsAny(), 0, It.IsAny(), It.IsAny()), Times.Once); VerifyNoOtherCalls(); } @@ -101,17 +106,22 @@ namespace FritzCallMonitor.Tests // Arrange using var client = GetClient(); await client.StartAsync(TestContext.CancellationTokenSource.Token); + await Task.Delay(ASYNC_DELAY, TestContext.CancellationTokenSource.Token); // Act client.Dispose(); client.Dispose(); // Assert - _tcpClientMock.Verify(m => m.Dispose(), Times.Once); + _socketMock.Verify(m => m.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.KeepAlive, true), Times.Once); + _tcpClientMock.VerifyGet(m => m.Client, Times.Once); + _tcpClientMock.VerifyGet(m => m.Connected, Times.Once); + _tcpClientMock.Verify(m => m.GetStream(), Times.Once); + _tcpClientMock.Verify(m => m.Dispose(), Times.Once); _tcpClientMock.Verify(m => m.ConnectAsync(HOST, PORT, It.IsAny()), Times.Once); - _socketMock.Verify(m => m.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.KeepAlive, true), Times.Once); + _networkStreamMock.Verify(m => m.ReadAsync(It.IsAny(), 0, It.IsAny(), It.IsAny()), Times.Once); VerifyNoOtherCalls(); }