Exemplo n.º 1
0
        public void NoServiceTest()
        {
            IServiceProvider serviceProvider = _services.BuildServiceProvider();

            SomeSingleton       singleton           = serviceProvider.GetService <SomeSingleton>();
            SomeSecondTransient someSecondTransient = serviceProvider.GetService <SomeSecondTransient>();

            Assert.Null(singleton);
            Assert.Null(someSecondTransient);
        }
Exemplo n.º 2
0
        public void ComplexTest()
        {
            _services.AddSingleton <SomeSingleton>();
            _services.AddTransient(provider => new SomeSecondTransient(provider.GetService <SomeSingleton>()));

            IServiceProvider serviceProvider = _services.BuildServiceProvider();

            SomeSingleton       sing   = serviceProvider.GetService <SomeSingleton>();
            SomeSecondTransient first  = serviceProvider.GetService <SomeSecondTransient>();
            SomeSecondTransient second = serviceProvider.GetService <SomeSecondTransient>();

            Assert.NotEqual(second, first);
            Assert.Equal(1, first.Counter);
            Assert.Equal(1, second.Counter);
            Assert.Equal(1, sing.Counter);
        }