public void Should_Success_Get_Xls() { var mockFacade = new Mock <IUnitPaymentOrderFacade>(); mockFacade.Setup(x => x.GenerateDataExcel(It.IsAny <DateTime>(), It.IsAny <DateTime>(), It.IsAny <int>())) .Returns(new MemoryStream()); var mockMapper = new Mock <IMapper>(); var user = new Mock <ClaimsPrincipal>(); var claims = new Claim[] { new Claim("username", "unittestusername") }; user.Setup(u => u.Claims).Returns(claims); UnitPaymentOrderGenerateDataController controller = GetController(mockFacade, null, mockMapper); controller.ControllerContext = new ControllerContext() { HttpContext = new DefaultHttpContext() { User = user.Object } }; controller.ControllerContext.HttpContext.Request.Headers["x-timezone-offset"] = "0"; var response = controller.GetXls(It.IsAny <DateTime>(), It.IsAny <DateTime>()); Assert.Equal("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", response.GetType().GetProperty("ContentType").GetValue(response, null)); }
public void Should_Error_Get_Xls() { var mockFacade = new Mock <IUnitPaymentOrderFacade>(); mockFacade.Setup(x => x.GenerateDataExcel(It.IsAny <DateTime>(), It.IsAny <DateTime>(), It.IsAny <int>())) .Throws(new Exception()); var mockMapper = new Mock <IMapper>(); UnitPaymentOrderGenerateDataController controller = GetController(mockFacade, null, mockMapper); var response = controller.GetXls(It.IsAny <DateTime>(), It.IsAny <DateTime>()); Assert.Equal((int)HttpStatusCode.InternalServerError, (int)response.GetType().GetProperty("StatusCode").GetValue(response, null)); }
private UnitPaymentOrderGenerateDataController GetController(Mock <IUnitPaymentOrderFacade> facadeM, Mock <IValidateService> validateM, Mock <IMapper> mapper) { var user = new Mock <ClaimsPrincipal>(); var claims = new Claim[] { new Claim("username", "unittestusername") }; user.Setup(u => u.Claims).Returns(claims); var servicePMock = GetServiceProvider(); if (validateM != null) { servicePMock .Setup(x => x.GetService(typeof(IValidateService))) .Returns(validateM.Object); } var identityService = new IdentityService { Username = "******" }; UnitPaymentOrderGenerateDataController controller = new UnitPaymentOrderGenerateDataController(mapper.Object, facadeM.Object, identityService) { ControllerContext = new ControllerContext() { HttpContext = new DefaultHttpContext() { User = user.Object } } }; controller.ControllerContext.HttpContext.Request.Headers["Authorization"] = "Bearer unittesttoken"; controller.ControllerContext.HttpContext.Request.Path = new PathString("/v1/unit-test"); controller.ControllerContext.HttpContext.Request.Headers["x-timezone-offset"] = "7"; return(controller); }