public void After_ServiceBindingGenerator()
        {
            var settings = SingularitySettings.Default;

            var insertElement = new ConcreteServiceBindingGenerator();

            settings.After <OpenGenericResolver>(insertElement);

            Assert.Equal(insertElement, settings.ServiceBindingGenerators[7]);
        }
        public void Append_ServiceBindingGenerator()
        {
            var settings = SingularitySettings.Default;

            var insertElement = new ConcreteServiceBindingGenerator();

            settings.Append(insertElement);

            Assert.Equal(insertElement, settings.ServiceBindingGenerators[7]);
        }
        public void Replace_ServiceBindingGenerator()
        {
            var settings = SingularitySettings.Default;

            var insertElement = new ConcreteServiceBindingGenerator();

            settings.Replace(new List <IServiceBindingGenerator> {
                insertElement
            });

            var element = Assert.Single(settings.ServiceBindingGenerators);

            Assert.Equal(insertElement, element);
        }
예제 #4
0
        public void Replace_ServiceBindingGenerator()
        {
            var settings = SingularitySettings.Default;

            var concreteServiceBindingGenerator = new ConcreteServiceBindingGenerator();

            settings.ConfigureServiceBindingGenerators(generators =>
            {
                generators.Replace(x => x is ContainerServiceBindingGenerator, concreteServiceBindingGenerator);
            });

            Assert.Equal(settings.ServiceBindingGenerators, new IServiceBindingGenerator[]
            {
                new ConcreteServiceBindingGenerator(),
                new CollectionServiceBindingGenerator(),
                new ExpressionServiceBindingGenerator(),
                new LazyServiceBindingGenerator(),
                new FactoryServiceBindingGenerator(),
                new ConcreteServiceBindingGenerator(),
                new OpenGenericBindingGenerator()
            }, new TypeEqualityComparer <IServiceBindingGenerator>());
        }
예제 #5
0
        public void Add_ServiceBindingGenerator()
        {
            var settings = SingularitySettings.Default;

            var insertElement = new ConcreteServiceBindingGenerator();

            settings.ConfigureServiceBindingGenerators(generators =>
            {
                generators.Add(insertElement);
            });

            Assert.Equal(settings.ServiceBindingGenerators, new IServiceBindingGenerator[]
            {
                new ContainerServiceBindingGenerator(),
                new CollectionServiceBindingGenerator(),
                new ExpressionServiceBindingGenerator(),
                new LazyServiceBindingGenerator(),
                new FactoryServiceBindingGenerator(),
                new ConcreteServiceBindingGenerator(),
                new OpenGenericBindingGenerator(),
                new ConcreteServiceBindingGenerator(),
            }, new TypeEqualityComparer <IServiceBindingGenerator>());
        }