public void CreateConcept_Returns_404_When_Service_Returns_Null() { A.CallTo(() => _service.CreateConcept(A <CreateConceptDto> ._, A <UserInfo> ._)).Returns(null); var result = _controller.CreateConcept(_createConcept); var status = result.Result.Result as NotFoundResult; Assert.Equal((int)HttpStatusCode.NotFound, status.StatusCode); }
public void CreateConcept_Returns_Null_Data_When_RepoInsert_Throws_Exception() { A.CallTo(() => ConceptRepository.Insert(A <Concept> ._)).Throws <Exception>(); var mockConcept = Mock.MockCreateOrUpdateConcept(); var viewModel = Service.CreateConcept(mockConcept, _userInfo); Assert.Null(viewModel.Data); }
public async Task <ActionResult <Response> > CreateConcept([Required][FromBody] CreateConceptDto concept) { if (concept == null) { var errors = new ModelStateDictionary(); errors.TryAddModelError("errorMessage", "Concept is required"); return(BadRequest(new ModelStateErrorResponse(errors))); } if (!ModelState.IsValid) { return(BadRequest(new ModelStateErrorResponse(ModelState))); } UserInfo userInfo; try { userInfo = await _tokenHelper.GetUserInfo(); } catch { return(Unauthorized()); } var viewModel = _service.CreateConcept(concept, userInfo); if (viewModel == null) { return(NotFound()); } if (viewModel.Data != null) { return(Ok(viewModel)); } if (viewModel.HasErrors()) { return(BadRequest(viewModel)); } return(InternalServerError()); }