public void ShouldAddDashboardComponent() { //Arrange var reportComponent = new ReportComponent { CreationDate = "deittoim.neu", Data = new ComponentData { Dimensions = null, Filters = null, Metrics = null }, Id = 1, Title = "test", Type = 1 }; var dashboardComponentRepository = new Mock <IDashboardComponentRepository>(); dashboardComponentRepository.Setup(x => x.Add(It.IsAny <DashboardComponent>())).Returns(1); var reportComponentRepository = new Mock <IReportComponentRepository>(); reportComponentRepository.Setup(x => x.Get(It.IsAny <int>())).Returns(reportComponent); var handler = new DashboardComponentAddHandler(dashboardComponentRepository.Object, reportComponentRepository.Object); //Act var result = handler.HandleCore(1, 1); //Assert Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(DashboardComponentResponse)); }
public void DashboardComponentAddHandlerValidatesReportComponentsExistence() { //Arrange var repository = new Mock <IDashboardComponentRepository>(); repository.Setup(x => x.DashboardExists(It.IsAny <int>())).Returns(true); repository.Setup(x => x.ReportComponentExists(It.IsAny <int>())).Returns(false); var handler = new DashboardComponentAddHandler(repository.Object); //Act handler.Validate(1, 1); //Assert Assert.IsNotNull(handler.Errors); Assert.IsTrue(handler.Errors.Count > 0); }
public HttpResponseMessage Add(int dashboardId, int reportComponentId) { var handler = new DashboardComponentAddHandler(); DashboardComponentResponse response = null; if (handler.Validate(dashboardId, reportComponentId)) { response = handler.HandleCore(dashboardId, reportComponentId); } if (handler.Errors == null || handler.Errors.Count < 1) { if (response != null) { return(Request.CreateResponse(HttpStatusCode.OK, response.ComponentDtos[0])); } } return(Request.CreateResponse(HttpStatusCode.BadRequest, handler.Errors)); }