public void NoServiceTest() { IServiceProvider serviceProvider = _services.BuildServiceProvider(); SomeSingleton singleton = serviceProvider.GetService <SomeSingleton>(); SomeSecondTransient someSecondTransient = serviceProvider.GetService <SomeSecondTransient>(); Assert.Null(singleton); Assert.Null(someSecondTransient); }
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); }