예제 #1
0
        public void Should_Error_Get_Report_Data()
        {
            var mockFacade = new Mock <IMonitoringCorrectionNoteExpenditureFacade>();

            mockFacade.Setup(x => x.GetMonitoringKeluarNKReport(null, null, 1, 25, "{}", 7))
            .Returns(Tuple.Create(new List <MonitoringCorrectionNoteExpenditureViewModel> {
                ViewModel
            }, 25));

            var mockMapper = new Mock <IMapper>();

            mockMapper.Setup(x => x.Map <List <MonitoringCorrectionNoteExpenditureViewModel> >(It.IsAny <List <MonitoringCorrectionNoteExpenditureViewModel> >()))
            .Returns(new List <MonitoringCorrectionNoteExpenditureViewModel> {
                ViewModel
            });

            var user   = new Mock <ClaimsPrincipal>();
            var claims = new Claim[]
            {
                new Claim("username", "unittestusername")
            };

            user.Setup(u => u.Claims).Returns(claims);
            MonitoringCorrectionNoteExpenditureController controller = new MonitoringCorrectionNoteExpenditureController(GetServiceProvider().Object, mockFacade.Object);

            controller.ControllerContext = new ControllerContext()
            {
                HttpContext = new DefaultHttpContext()
                {
                    User = user.Object
                }
            };
            controller.ControllerContext.HttpContext.Request.Headers["x-timezone-offset"] = "0";
            var response = controller.GetReport(null, null, 1, 25, "{}");

            Assert.Equal((int)HttpStatusCode.InternalServerError, GetStatusCode(response));
        }