Exemple #1
0
        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));
        }
Exemple #2
0
        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);
        }
Exemple #3
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));
        }