public void StartAtEnd() { // Setup ReplayMachine machine = CreateMachine(); machine.SeekToNextBookmark(); machine.SeekToNextBookmark(); machine.Start(); while (machine.Ticks < machine.EndTicks) { machine.AdvancePlayback(100000); Thread.Sleep(10); } // Act Mock <MachineAuditorDelegate> auditor = new Mock <MachineAuditorDelegate>(); machine.Auditors += auditor.Object; machine.Start(); while (machine.Ticks < machine.EndTicks) { machine.AdvancePlayback(100000); Thread.Sleep(10); } // Verify auditor.VerifyNoOtherCalls(); Assert.AreEqual(RunningState.Paused, machine.RunningState); Assert.AreEqual(machine.EndTicks, machine.Ticks); }
public void SeekToPrevAndNextBookmark() { // Setup ReplayMachine machine = CreateMachine(); // Act and Verify foreach (UInt64 bookmarkTick in _bookmarkTicks) { machine.SeekToNextBookmark(); Assert.AreEqual(bookmarkTick, machine.Ticks); } UInt64 finalTicks = machine.Ticks; machine.SeekToNextBookmark(); Assert.AreEqual(finalTicks, machine.Ticks); _bookmarkTicks.Reverse(); foreach (UInt64 bookmarkTick in _bookmarkTicks) { Assert.AreEqual(bookmarkTick, machine.Ticks); machine.SeekToPreviousBookmark(); } Assert.AreEqual(0, machine.Ticks); machine.SeekToPreviousBookmark(); Assert.AreEqual(0, machine.Ticks); }
public void EndTicks() { // Setup ReplayMachine replayMachine = CreateMachine(); // Verify Assert.AreEqual(_finalHistoryEvent.Ticks, replayMachine.EndTicks); }
public void NoPropertyChangedHandlers() { // Setup ReplayMachine machine = CreateMachine(); // Act and Verify Assert.DoesNotThrow(() => machine.Status = "Status"); }
public void CanClose() { // Setup ReplayMachine machine = CreateMachine(); // Verify Assert.True(machine.CanClose); }
public void CanStart() { // Setup ReplayMachine replayMachine = CreateMachine(); // Verify Assert.True(replayMachine.CanStart); Assert.False(replayMachine.CanStop); }
public void Name() { // Setup ReplayMachine machine = CreateMachine(); // Act machine.Name = "Test"; // Verify Assert.AreEqual("Test", machine.Name); }
public void SeekToStart() { // Setup ReplayMachine machine = CreateMachine(); RunForAWhile(machine); // Act machine.SeekToStart(); // Verify Assert.AreEqual(0, machine.Ticks); }
public void CloseTwice() { // Setup ReplayMachine machine = CreateMachine(); machine.Close(); // Act and Verify Assert.DoesNotThrow(() => { machine.Close(); }); }
public void StatusChanged() { // Setup ReplayMachine machine = CreateMachine(); Mock <PropertyChangedEventHandler> propChanged = new Mock <PropertyChangedEventHandler>(); machine.PropertyChanged += propChanged.Object; // Act machine.Status = "Status"; // Verify propChanged.Verify(p => p(machine, It.Is <PropertyChangedEventArgs>(e => e.PropertyName == "Status"))); }
public void Auditor() { // Setup ReplayMachine replayMachine = CreateMachine(); Mock <MachineAuditorDelegate> auditor = new Mock <MachineAuditorDelegate>(); replayMachine.Auditors += auditor.Object; // Act replayMachine.Start(); Thread.Sleep(10); replayMachine.Stop(); // Verify auditor.Verify(a => a(It.Is <CoreAction>(coreAction => coreAction != null && coreAction.Type == CoreRequest.Types.RunUntil)), Times.AtLeastOnce()); }
public void SetRunning(RunningState runningState) { // Setup ReplayMachine machine = CreateMachine(); if (runningState == RunningState.Running) { machine.Start(); } // Act machine.SeekToNextBookmark(); // Verify Assert.AreEqual(runningState, machine.RunningState); }
public void StartAndStop() { // Setup ReplayMachine replayMachine = CreateMachine(); RunningState runningState1 = replayMachine.RunningState; // Act replayMachine.Start(); RunningState runningState2 = replayMachine.RunningState; replayMachine.Stop(); RunningState runningState3 = replayMachine.RunningState; // Verify Assert.AreEqual(RunningState.Paused, runningState1); Assert.AreEqual(RunningState.Running, runningState2); Assert.AreEqual(RunningState.Paused, runningState3); }
public void Toggle() { // Setup ReplayMachine machine = CreateMachine(); machine.Start(); // Act RunningState runningState1 = machine.RunningState; machine.ToggleRunning(); RunningState runningState2 = machine.RunningState; machine.ToggleRunning(); // Verify Assert.AreEqual(RunningState.Running, runningState1); Assert.AreEqual(RunningState.Paused, runningState2); Assert.AreEqual(RunningState.Running, machine.RunningState); }
private ReplayMachine CreateMachine() { ReplayMachine replayMachine = new ReplayMachine(_finalHistoryEvent); return(replayMachine); }