public void Attempt_Subtract_Minutes_When_Recording_Does_Nothing() { var recorder = new TestRecorder(110); var speedProgress = new Mock <ISpeedProgress>(); var practiceTimeProgress = new Mock <IPracticeTimeProgress>(); var manualProgress = new Mock <IManualProgress>(); using (var exerciseRecorder = new ExerciseRecorder(recorder, 1, "Exercise Title", speedProgress.Object, practiceTimeProgress.Object, manualProgress.Object)) { exerciseRecorder.Resume(); exerciseRecorder.SubtractMinutes(2); exerciseRecorder.Pause(); Assert.That(exerciseRecorder.RecordedSeconds, Is.InRange(110, 112)); } }
public void RecordingStatusChanged_Event_Fired_On_Pause() { var called = false; var recorder = new TestRecorder(110); var speedProgress = new Mock <ISpeedProgress>(); var practiceTimeProgress = new Mock <IPracticeTimeProgress>(); var manualProgress = new Mock <IManualProgress>(); using (var exerciseRecorder = new ExerciseRecorder(recorder, 1, "Exercise Title", speedProgress.Object, practiceTimeProgress.Object, manualProgress.Object)) { exerciseRecorder.Resume(); exerciseRecorder.RecordingStatusChanged += (sender, args) => called = true; exerciseRecorder.Pause(); Assert.IsTrue(called); } }
public void TickActionCallBack_NotCalled_WhenRecording_After_Adding_Minutes() { bool fired = false; void action() => fired = true; var recorder = new TestRecorder(110); var speedProgress = new Mock <ISpeedProgress>(); var practiceTimeProgress = new Mock <IPracticeTimeProgress>(); var manualProgress = new Mock <IManualProgress>(); using (var exerciseRecorder = new ExerciseRecorder(recorder, 1, "Exercise Title", speedProgress.Object, practiceTimeProgress.Object, manualProgress.Object)) { exerciseRecorder.TickActionCallBack = action; exerciseRecorder.Resume(); exerciseRecorder.AddMinutes(2); exerciseRecorder.Pause(); Assert.IsFalse(fired); } }
public void RecorderViewModel_Recording_Reflects_Model_Recording() { var exerciseService = new Mock <IExerciseService>(); var exerciseRecorder = new ExerciseRecorder(new Recorder(), 1, "Exercise Title", new SpeedProgress(85, 85, 120, 10), new PracticeTimeProgress(300, 600, 10), new ManualProgress(0, 100)); var viewModel = new ExerciseRecorderViewModel(exerciseService.Object, exerciseRecorder); exerciseRecorder.Resume(); var recording = exerciseRecorder.Recording && viewModel.Recording; exerciseRecorder.Pause(); var paused = !exerciseRecorder.Recording && !viewModel.Recording; exerciseRecorder.Resume(); exerciseRecorder.Reset(); var reset = !exerciseRecorder.Recording && !viewModel.Recording; Assert.IsTrue(recording); Assert.IsTrue(paused); Assert.IsTrue(reset); }