public async Task <IActionResult> DeleteTutorAsync(long id, CancellationToken token) { var command = new DeleteSubjectCommand(id); await _commandBus.DispatchAsync(command, token); return(Ok()); }
public void DeleteSubjectCommand_ShouldThrowNotFoundException() { var command = new DeleteSubjectCommand { Id = 99 }; FluentActions.Invoking(() => SendAsync(command)).Should().Throw <NotFoundException>(); }
public async Task <ActionResult> DeleteSubject(int id) { var deleteSubjectCommand = new DeleteSubjectCommand() { Id = id }; await _mediator.Send(deleteSubjectCommand); return(NoContent()); }
public async Task ThrowDeleteFailureException_WhenLectorSubjectWithSubjectExists() { var request = new DeleteSubjectCommand { Id = 2 }; var handler = new DeleteSubjectCommandHandler(Context); var exception = Assert.ThrowsAsync <DeleteFailureException>(async() => await handler.Handle(request, CancellationToken.None)); Assert.AreEqual(exception.Message, ExceptionMessagesBuilderHelper.GetDeleteFailureExceptionMessage(nameof(Subject), request.Id, "This subjects is assigned to lectors")); }
public async Task ThrowNotFoundException_WhenSubjectIsNotExists() { var request = new DeleteSubjectCommand { Id = 100 }; var handler = new DeleteSubjectCommandHandler(Context); var exception = Assert.ThrowsAsync <NotFoundException>(async() => await handler.Handle(request, CancellationToken.None)); Assert.AreEqual(exception.Message, ExceptionMessagesBuilderHelper.GetNotFoundExceptionMessage(nameof(Subject), request.Id)); }
public async Task DeleteSubject() { var request = new DeleteSubjectCommand { Id = 1 }; var handler = new DeleteSubjectCommandHandler(Context); var result = await handler.Handle(request, CancellationToken.None); Assert.IsFalse(Context.Subjects.Any(x => x.Id == request.Id)); }
public async Task DeleteSubjectCommand_ShouldThrowDeleteFailureExceptionAsync() { var subjectId = await SendAsync(new CreateSubjectCommand { Name = "StaffLogic" }); var extraClassId = await SendAsync(new CreateExtraClassCommand { SubjectId = subjectId, Date = DateTime.Now, Duration = TimeSpan.FromMinutes(60), Name = "StaffLogic", Price = 100, Size = 2 }); var command = new DeleteSubjectCommand { Id = subjectId }; FluentActions.Invoking(() => SendAsync(command)).Should().Throw <DeleteFailureException>(); }