/// <inheritdoc />
        public Action <IApplicationBuilder> Configure(Action <IApplicationBuilder> next)
        {
            Ensure.IsNotNull(next, nameof(next));

            var context = new FeatureInitialisationContext(_serviceProvider);

            foreach (var feature in _featureProvider.Features)
            {
                var state = _featureStateProvider.GetFeatureState(feature.Id);
                if (state != null && state.Enabled)
                {
                    feature.Initialise(context);
                }
            }

            return(next);
        }
        public void Configure_SkipsFeatureInitialisation_WhenFeatureDisabled()
        {
            // Arrange
            FeatureInitialisationContext capturedContext = null;

            var featureId       = new FeatureId(new ModuleId("Test"), "Test");
            var serviceProvider = Mock.Of <IServiceProvider>();
            var filter          = new FeatureInitialiserStartupFilter(
                serviceProvider,
                CreateFeatureProvider(
                    CreateFeature(featureId, fic => capturedContext = fic)),
                CreateFeatureStateProvider(featureId, false));

            Action <IApplicationBuilder> configure = _ => { };

            // Act
            filter.Configure(configure);

            // Assert
            Assert.Null(capturedContext);
        }
Esempio n. 3
0
 /// <inheritdoc />
 public virtual void Initialise(FeatureInitialisationContext context)
 {
 }