コード例 #1
0
        public void AddFeatureServices_ValidatesArguments()
        {
            // Arrange
            var services        = new ServiceCollection();
            var featureProvider = new FeatureProvider(new[] { new TestFeature() });

            // Act

            // Assert
            Assert.Throws <ArgumentNullException>(() => ServiceCollectionExtensions.AddFeatureServices(null /* services */, null /* featureProvider */, null /* featureStateProvider */));
            Assert.Throws <ArgumentNullException>(() => ServiceCollectionExtensions.AddFeatureServices(services, null /* featureProvider */, null /* featureStateProvider */));
            Assert.Throws <ArgumentNullException>(() => ServiceCollectionExtensions.AddFeatureServices(services, featureProvider, null /* featureStateProvider */));
        }
コード例 #2
0
        public void AddModuleServices_AddsServicesFromModule()
        {
            // Arrange
            var module         = new TestModule();
            var moduleProvider = new ModuleProvider(new[] { module });
            var services       = new ServiceCollection();

            // Act
            ServiceCollectionExtensions.AddModuleServices(services, moduleProvider);

            // Assert
            var descriptor = services.FirstOrDefault(sd => sd.ServiceType == typeof(IServiceOne));

            Assert.NotNull(descriptor);
        }
コード例 #3
0
        public void AddModuleServices_AddsModuleProvider()
        {
            // Arrange
            var module         = new TestModule();
            var moduleProvider = new ModuleProvider(new[] { module });
            var services       = new ServiceCollection();

            // Act
            ServiceCollectionExtensions.AddModuleServices(services, moduleProvider);

            // Assert
            var descriptor = services.FirstOrDefault(sd => sd.ServiceType == typeof(IModuleProvider));

            Assert.NotNull(descriptor);
            Assert.Equal(ServiceLifetime.Singleton, descriptor.Lifetime);
        }
コード例 #4
0
        public void AddFeatureServices_AddsFeatureProvider()
        {
            // Arrange
            var services             = new ServiceCollection();
            var featureProvider      = new FeatureProvider(new[] { new TestFeature() });
            var configuration        = new ConfigurationBuilder().Build();
            var featureStateProvider = new FeatureStateProvider(featureProvider, configuration);

            // Act
            ServiceCollectionExtensions.AddFeatureServices(services, featureProvider, featureStateProvider);

            // Assert
            var descriptor = services.FirstOrDefault(sd => sd.ServiceType == typeof(IFeatureProvider));

            Assert.NotNull(descriptor);
            Assert.Equal(ServiceLifetime.Singleton, descriptor.Lifetime);
        }