public void ResumeAfterTimeout() { _sessionTracker.Resume(); _sessionTracker.Pause(); Task.Delay((int)SessionTracker.SessionTimeout).Wait(); _sessionTracker.Resume(); _mockChannel.Verify(channel => channel.Enqueue(It.IsAny <StartSessionLog>()), Times.Exactly(2)); }
public void ResumeAfterTimeout() { Log actualLog = null; _mockChannel.Setup(channel => channel.EnqueueAsync(It.IsAny <StartSessionLog>())).Callback <Log>(log => actualLog = log); _sessionTracker.Resume(); var firstLog = actualLog; _sessionTracker.Pause(); Task.Delay((int)SessionTracker.SessionTimeout * 2).Wait(); _sessionTracker.Resume(); var secondLog = actualLog; _mockChannel.Verify(channel => channel.EnqueueAsync(It.IsNotNull <StartSessionLog>()), Times.Exactly(2)); Assert.IsNotNull(firstLog.Sid); Assert.IsNotNull(secondLog.Sid); Assert.AreNotEqual(firstLog.Sid, secondLog.Sid); }