0

运行测试用例成功但数据库中的数据未更新时,我收到系统空异常,该异常可通过使用控制器上下文解决但无法更新数据

**Unit test code**

 CANVAS_FIRM Firm = new CANVAS_FIRM
            {
                AUM = FirmToUpdate.AUM,
                CANVAS_ADVISOR = FirmToUpdate.CANVAS_ADVISOR,
                CANVAS_FIRM_ID = FirmToUpdate.CANVAS_FIRM_ID,
                FIRM_NAME = FirmToUpdate.FIRM_NAME,
                Street = FirmToUpdate.Street + "_" + maxId,
                City = FirmToUpdate.City + "_" + "Updated",
                State = FirmToUpdate.State + "_" + "Updated",
                Zip = FirmToUpdate.Zip,
                HasDiscretion = FirmToUpdate.HasDiscretion,
                ClientLogoUrl = FirmToUpdate.ClientLogoUrl,
                PlatformIds = FirmToUpdate.PlatformIds
            };

UsersController _requestUsersController = new UsersController();

 _requestUsersController.ValueProvider = new FormCollection().ToValueProvider();
            var request = new Mock<HttpRequestBase>();
            //request.Setup(r => r.HttpMethod).Returns("POST");
            var mockHttpContext = new Mock<HttpContextBase>();
            mockHttpContext.Setup(c => c.Request).Returns(request.Object);
            var controllerContext = new ControllerContext(mockHttpContext.Object, new RouteData(), new Mock<ControllerBase>().Object);
            _requestUsersController.ControllerContext = controllerContext;

            JsonResult result = _requestUsersController._SaveFirm(Firm);

控制器代码

CANVAS_FIRM ExistingFirm = CanvasFirmRepository.GetFirmONLYForEditing_DeveloperBeware(db, Firm.CANVAS_FIRM_ID);
                Succeeded = TryUpdateModel(ExistingFirm, "Firm");                
                Firm = CanvasFirmRepository.SaveFirm(db, ExistingFirm, true);
4

0 回答 0