예제 #1
0
        public FeaturesControllerTests()
        {
            _featuresRepository = new Mock <IFeaturesRepository>();
            _mapper             = new Mock <IMapper>();
            _unitOfWork         = new Mock <IUnitOfWork>();

            _controller = new FeaturesController(_featuresRepository.Object, _mapper.Object, _unitOfWork.Object);
        }
예제 #2
0
        void OnTestSessionChanged(TestSession session)
        {
            var newCategoriesArray = new NSMutableArray();

            newCategoriesArray.Add(allCategory);
            newCategoriesArray.Add(globalCategory);
            newCategoriesArray.Add(martinCategory);
            var newCurrentCategory = allCategory;

            if (session != null)
            {
                Configuration = session.Configuration;
                foreach (var category in Configuration.Categories)
                {
                    var model = new TestCategoryModel(category);
                    newCategoriesArray.Add(model);
                    if (category == Configuration.CurrentCategory)
                    {
                        newCurrentCategory = model;
                    }
                }

                if (fullyLoaded)
                {
                    foreach (var feature in Configuration.Features)
                    {
                        var model = new TestFeatureModel(feature);
                        FeaturesController.AddObject(model);
                    }
                }
            }
            else
            {
                Configuration = null;

                if (fullyLoaded)
                {
                    var featureRange = new NSRange(0, FeaturesController.ArrangedObjects().Length);
                    FeaturesController.Remove(NSIndexSet.FromNSRange(featureRange));
                }
            }

            WillChangeValue(CurrentCategoryKey);
            WillChangeValue(TestCategoriesArrayKey);
            currentCategory     = newCurrentCategory;
            testCategoriesArray = newCategoriesArray;
            DidChangeValue(TestCategoriesArrayKey);
            DidChangeValue(CurrentCategoryKey);

            if (SessionChangedEvent != null)
            {
                SessionChangedEvent(this, session);
            }
        }
        public void Should_PutFeature()
        {
            Feature testFeature = new Feature {
                Id = 1, Title = "Title", Name = "Feature1", Detail = "Feature Details", Link = "www.something.com", Image = "Image Data", Order = 1
            };

            Mock <IUnitOfWork> mock = new Mock <IUnitOfWork>();

            mock.Setup(f => f.Features.Update(testFeature)).Returns(true);

            FeaturesController controller = new FeaturesController(mock.Object);
            var features = controller.PutFeature(1, testFeature);

            Assert.IsType <NoContentResult>(features);
        }
        public void ShouldNot_DeleteFeature_NotFound()
        {
            Feature testFeature = new Feature {
                Id = 10
            };

            Mock <IUnitOfWork> mock = new Mock <IUnitOfWork>();

            mock.Setup(f => f.Features.GetById(10)).Returns((Feature)null);

            FeaturesController controller = new FeaturesController(mock.Object);
            var result = controller.DeleteFeature(10);

            Assert.IsType <NotFoundResult>(result);
        }
        public void Should_DeleteFeature()
        {
            Feature testFeature = new Feature {
                Id = 1
            };

            Mock <IUnitOfWork> mock = new Mock <IUnitOfWork>();

            mock.Setup(f => f.Features.GetById(1)).Returns(testFeature);
            mock.Setup(f => f.Features.Delete(testFeature)).Returns(true);

            FeaturesController controller = new FeaturesController(mock.Object);
            var result = controller.DeleteFeature(1);

            Assert.IsType <OkObjectResult>(result);
        }
        public void ShouldNot_DeleteFeature_ModelStateError()
        {
            Feature testFeature = new Feature {
                Id = 1
            };

            Mock <IUnitOfWork> mock = new Mock <IUnitOfWork>();

            mock.Setup(f => f.Features.Delete(testFeature)).Returns(true);

            FeaturesController controller = new FeaturesController(mock.Object);

            controller.ModelState.AddModelError("TestError", "Error");
            var result = controller.DeleteFeature(1);

            Assert.IsType <BadRequestObjectResult>(result);
        }
        public void ShouldNot_PutFeature_ModelStateError()
        {
            Feature testFeature = new Feature {
                Id = 1, Title = "Title", Name = "Feature1", Detail = "Feature Details", Link = "www.something.com", Image = "Image Data", Order = 1
            };

            Mock <IUnitOfWork> mock = new Mock <IUnitOfWork>();

            mock.Setup(f => f.Features.Update(testFeature)).Returns(true);

            FeaturesController controller = new FeaturesController(mock.Object);

            controller.ModelState.AddModelError("TestError", "Error");
            var features = controller.PutFeature(1, testFeature);

            Assert.IsType <BadRequestObjectResult>(features);
        }
        public void Should_GetFeatures()
        {
            // mock UoW and repository data
            Mock <IUnitOfWork> mock = new Mock <IUnitOfWork>();

            mock.Setup(f => f.Features.Get()).Returns(new List <Feature>
            {
                new Feature {
                    Id = 1, Title = "Title", Name = "Feature1", Detail = "Feature Details", Link = "www.something.com", Image = "Image Data", Order = 1
                },
                new Feature {
                    Id = 2, Title = "Title", Name = "Feature2", Detail = "Feature Details", Link = "www.something.com", Image = "Image Data", Order = 2
                },
                new Feature {
                    Id = 3, Title = "Title", Name = "Feature3", Detail = "Feature Details", Link = "www.something.com", Image = "Image Data", Order = 3
                },
            }
                                                      .AsQueryable());

            FeaturesController controller = new FeaturesController(mock.Object);
            var features = controller.GetFeatures();

            Assert.True(features.Count() == 3);
        }
예제 #9
0
 public void Setup()
 {
     _mockMediator       = new Mock <IMediator>();
     _featuresController = new FeaturesController(_mockMediator.Object);
 }
 protected void AssertTempData(FeaturesController controller, string fieldName, string expected)
 {
     Assert.Equal(expected, controller.TempData[fieldName]);
 }
 protected void AssertErrorMessage(FeaturesController controller, string expectedErrorMessage)
 {
     AssertTempData(controller, "Message", null);
     AssertTempData(controller, "ErrorMessage", expectedErrorMessage);
 }
 protected void AssertSuccessMessage(FeaturesController controller)
 {
     AssertTempData(controller, "Message",
                    $"Your feature flags have been saved! It may take up to {RefreshInterval.TotalSeconds} seconds for this change to propagate everywhere.");
     AssertTempData(controller, "ErrorMessage", null);
 }
 protected abstract Task <ActionResult> InvokeAsync(FeaturesController controller, IModifyFeatureFlagsViewModel model);
 protected override Task <ActionResult> InvokeAsync(FeaturesController controller, IModifyFeatureFlagsViewModel model)
 {
     return(controller.DeleteFlight(model as ModifyFeatureFlagsFlightViewModel));
 }
예제 #15
0
 protected abstract Task <ActionResult> InvokeAsync(FeaturesController controller, TModify model);
예제 #16
0
 protected override Task <ActionResult> InvokeAsync(FeaturesController controller, ModifyFeatureFlagsFeatureViewModel model)
 {
     return(controller.EditFeature(model));
 }