public async Task Handle_GivenValidTaskItemId_LoginUserIsNotCreatorAndTeamIdNotExist_ThrowsNotFoundException() { // Login user is not creator _sut = SetLoginUser(memberId); var command = new DeleteTaskItemCommand { Id = teamNotExistTaskItemId.ToString() }; await Assert.ThrowsAsync <NotFoundException>(() => _sut.Handle(command, CancellationToken.None)); }
public async Task Handle_GivenNullTaskItemId_ThrowsArgumentNullException() { // Login user is creator _sut = SetLoginUser(creatorId); var command = new DeleteTaskItemCommand { Id = null }; await Assert.ThrowsAsync <ArgumentNullException>(() => _sut.Handle(command, CancellationToken.None)); }
public async Task Handle_GivenValidTaskItemIdAndValidTeamId_LoginUserIsNotCreatorAndNotLeaderAndNotAssignee_ThrowsNotOwnedException() { // Login user is member but is not creator and is not assignee _sut = SetLoginUser(memberId); var command = new DeleteTaskItemCommand { Id = taskItemId.ToString() }; await Assert.ThrowsAsync <NotOwnedException>(() => _sut.Handle(command, CancellationToken.None)); }
public async Task Handle_GivenInvalidTaskItemId_ThrowsNotFoundException() { // Login user is creator _sut = SetLoginUser(creatorId); var invalidTaskId = Guid.NewGuid(); var command = new DeleteTaskItemCommand { Id = invalidTaskId.ToString() }; await Assert.ThrowsAsync <NotFoundException>(() => _sut.Handle(command, CancellationToken.None)); }
public async Task Handle_GivenValidTaskItemIdAndValidTeamId_LoginUserIsCreator_DeletesTaskItem() { // Login user is creator _sut = SetLoginUser(creatorId); var command = new DeleteTaskItemCommand { Id = taskItemId.ToString() }; await _sut.Handle(command, CancellationToken.None); var taskItem = await _context.TaskItems.FindAsync(taskItemId); Assert.Null(taskItem); }