public async void Delete_Errors() { EmailControllerMockFacade mock = new EmailControllerMockFacade(); var mockResult = new Mock <ActionResponse>(); mockResult.SetupGet(x => x.Success).Returns(false); mock.ServiceMock.Setup(x => x.Delete(It.IsAny <int>())).Returns(Task.FromResult <ActionResponse>(mockResult.Object)); EmailController controller = new EmailController(mock.ApiSettingsMoc.Object, mock.LoggerMock.Object, mock.TransactionCoordinatorMock.Object, mock.ServiceMock.Object, mock.ModelMapperMock.Object); controller.ControllerContext = new ControllerContext(); controller.ControllerContext.HttpContext = new DefaultHttpContext(); IActionResult response = await controller.Delete(default(int)); response.Should().BeOfType <ObjectResult>(); (response as ObjectResult).StatusCode.Should().Be((int)HttpStatusCode.UnprocessableEntity); mock.ServiceMock.Verify(x => x.Delete(It.IsAny <int>())); }
public void Email_Controller_Delete_Test() { foreach (LanguageEnum LanguageRequest in AllowableLanguages) { foreach (int ContactID in new List <int>() { AdminContactID }) //, TestEmailValidatedContactID, TestEmailNotValidatedContactID }) { EmailController emailController = new EmailController(DatabaseTypeEnum.SqlServerTestDB); Assert.IsNotNull(emailController); Assert.AreEqual(DatabaseTypeEnum.SqlServerTestDB, emailController.DatabaseType); Email emailLast = new Email(); using (CSSPDBContext db = new CSSPDBContext(DatabaseType)) { Query query = new Query(); query.Language = LanguageRequest; query.Asc = ""; query.Desc = ""; EmailService emailService = new EmailService(query, db, ContactID); emailLast = (from c in db.Emails select c).FirstOrDefault(); } // ok with Email info IHttpActionResult jsonRet = emailController.GetEmailWithID(emailLast.EmailID); Assert.IsNotNull(jsonRet); OkNegotiatedContentResult <Email> Ret = jsonRet as OkNegotiatedContentResult <Email>; Email emailRet = Ret.Content; Assert.AreEqual(emailLast.EmailID, emailRet.EmailID); BadRequestErrorMessageResult badRequest = jsonRet as BadRequestErrorMessageResult; Assert.IsNull(badRequest); // Post to return newly added Email emailRet.EmailID = 0; emailController.Request = new System.Net.Http.HttpRequestMessage(); emailController.Request.RequestUri = new System.Uri("http://localhost:5000/api/email"); IHttpActionResult jsonRet3 = emailController.Post(emailRet, LanguageRequest.ToString()); Assert.IsNotNull(jsonRet3); CreatedNegotiatedContentResult <Email> emailRet3 = jsonRet3 as CreatedNegotiatedContentResult <Email>; Assert.IsNotNull(emailRet3); Email email = emailRet3.Content; BadRequestErrorMessageResult badRequest3 = jsonRet3 as BadRequestErrorMessageResult; Assert.IsNull(badRequest3); // Delete to return success IHttpActionResult jsonRet2 = emailController.Delete(emailRet, LanguageRequest.ToString()); Assert.IsNotNull(jsonRet2); OkNegotiatedContentResult <Email> emailRet2 = jsonRet2 as OkNegotiatedContentResult <Email>; Assert.IsNotNull(emailRet2); BadRequestErrorMessageResult badRequest2 = jsonRet2 as BadRequestErrorMessageResult; Assert.IsNull(badRequest2); // Delete to return CSSPError because EmailID of 0 does not exist emailRet.EmailID = 0; IHttpActionResult jsonRet4 = emailController.Delete(emailRet, LanguageRequest.ToString()); Assert.IsNotNull(jsonRet4); OkNegotiatedContentResult <Email> emailRet4 = jsonRet4 as OkNegotiatedContentResult <Email>; Assert.IsNull(emailRet4); BadRequestErrorMessageResult badRequest4 = jsonRet4 as BadRequestErrorMessageResult; Assert.IsNotNull(badRequest4); } } }