public override void Given() { this.TableStorageContext = new Mock<ITableStorageContext> { DefaultValue = DefaultValue.Mock }; var tableStorageContextFactory = new TableStorageContextFactoryMockBuilder() .SetTableStorageContext(this.TableStorageContext) .Build(); var authenticationHelper = new Mock<IAuthenticationHelper>(); authenticationHelper.Setup(x => x.NameIdentifier).Returns(TestValues.NAME_IDENTIFIER); var cardsBatchController = new CardsBatchController(tableStorageContextFactory.Object, authenticationHelper.Object); var apiControllerBuilder = new ApiControllerBuilder<CardsBatchController>(cardsBatchController); this.CardsBatchController = apiControllerBuilder .CreateRequest(HttpMethod.Put, TestUrls.CARDS) .Build(); }
public async void should_send_email() { //arrange var controllerContext = new Mock <ControllerContext>(); var httpContext = new Mock <HttpContextBase>(); var httpRequest = new Mock <HttpRequestBase>(); controllerContext.Setup(x => x.HttpContext).Returns(httpContext.Object); httpContext.Setup(x => x.Request).Returns(httpRequest.Object); var headers = new NameValueCollection { { ConstHelper.Authorization, "token" } }; httpRequest.Setup(x => x.Headers).Returns(headers); const string actionName = "SendEmail"; const string email = "*****@*****.**"; const string subject = "subject"; const string htmlBody = "htmlBody"; var messageService = new Mock <IMessageService>(); messageService.Setup(x => x.SendEmail(email, subject, htmlBody)).Returns(Task.FromResult(new SendEmailResponse())); //act var sut = new ApiControllerBuilder().WithMessageService(messageService.Object).Build(); sut.ControllerContext = controllerContext.Object; var result = await sut.SendEmail(email, subject, htmlBody); //assert Assert.IsNotNull(result); Assert.IsAssignableFrom <JsonResult>(result); messageService.Verify(x => x.SendEmail(email, subject, htmlBody), Times.Once); sut.AssertPostAttributeWithOutAntiForgeryToken(actionName, new[] { typeof(string), typeof(string), typeof(string) }); sut.AssertValidateInputAttribute(actionName, new[] { typeof(string), typeof(string), typeof(string) }); }