public void ShoudThrowExceptionWhenNotHaveActiveTaskAndWantStop() { // given var recorder = MockRepository.GenerateMock <ITaskRecorder>(); // when var validator = new ActiveTaskValidator(recorder.HasActiveTask); // then Assert.Throws <NoActiveTaskException>(() => validator.CheckIfAnyTaskIsRunning()); }
protected override void Handle(StopTaskCommand request) { ActiveTaskValidator validator = new ActiveTaskValidator(TaskRecorder.HasActiveTask); validator.CheckIfAnyTaskIsRunning(); if (TaskService.AskBeforeStopActiveTaskResult() == DialogResult.No) { return; } BaseTask activeTask = TaskRecorder.ActiveTask; DateTime endTime = Database.GetCurrentTime(); TaskRepository.Finish(activeTask, endTime); TaskRecorder.StopActiveTask(endTime); WorkTimer.Stop(); }