public async Task DeleteNoticeBoardThread_InvalidThreadID() { var requestDto = new DeleteNoticeBoardThreadRequest( 0 ); var exception = await Assert.ThrowsAsync <InvalidNoticeBoardRequestException>(() => _sut.DeleteNoticeBoardThread(requestDto)); Assert.Equal("Invalid ThreadId", exception.Message); }
public async Task DeleteNoticeBoardThread_SuccessfullyDeleteThread() { var requestDto = new DeleteNoticeBoardThreadRequest( 1 ); var responseDto = new DeleteNoticeBoardThreadResponse(HttpStatusCode.Accepted); _noticeBoardRepoMock.Setup(nb => nb.DeleteNoticeBoardThread(requestDto)).ReturnsAsync(responseDto); var noticeBoard = await _sut.DeleteNoticeBoardThread(requestDto); Assert.Equal(HttpStatusCode.Accepted, noticeBoard.HttpStatusCode); }
public async Task <DeleteNoticeBoardThreadResponse> DeleteNoticeBoardThread( DeleteNoticeBoardThreadRequest request) { if (request == null) { throw new InvalidNoticeBoardRequestException("Invalid DeleteNoticeBoardThreadRequest Object"); } if (request.ThreadId == 0) { throw new InvalidNoticeBoardRequestException("Invalid ThreadId"); } return(await _noticeBoardRepository.DeleteNoticeBoardThread(request)); }
public async Task <DeleteNoticeBoardThreadResponse> DeleteNoticeBoardThread( DeleteNoticeBoardThreadRequest request) { try { var threadToDelete = _noticeBoard.NoticeBoard.Find(request.ThreadId); if (threadToDelete != null) { _noticeBoard.NoticeBoard.Remove(threadToDelete); } else { throw new InvalidNoticeBoardRequestException("Thread Id not found in database"); } await _noticeBoard.SaveChanges(); return(new DeleteNoticeBoardThreadResponse(HttpStatusCode.Accepted)); } catch (InvalidNoticeBoardRequestException e) { return(new DeleteNoticeBoardThreadResponse(HttpStatusCode.BadRequest)); } }
public async Task <DeleteNoticeBoardThreadResponse> DeleteNoticeBoardThread( [FromBody] DeleteNoticeBoardThreadRequest request) { return(await _service.DeleteNoticeBoardThread(request)); }