Beispiel #1
0
        public void GetInstanceTestThrowsException()
        {
            var serviceCollection = new ServiceCollection();

            var container = new ServiceProviderDiContainer(serviceCollection.BuildServiceProvider());

            new DiContainerTestHelper().TestGetInstanceThrowsException <ITestService>(container);
        }
Beispiel #2
0
        public void TryGetInstance_ServiceFound_ReturnsTrueAndInstance()
        {
            var serviceCollection = new ServiceCollection();

            serviceCollection.AddTransient <ITestService, TestService2>();
            var container = new ServiceProviderDiContainer(serviceCollection.BuildServiceProvider());

            new DiContainerTestHelper().TryGetInstance_ServiceFound_ReturnsTrueAndInstance <ITestService>(container);
        }
Beispiel #3
0
        public void GetInstanceTest()
        {
            var serviceCollection = new ServiceCollection();

            serviceCollection.AddTransient <ITestService, TestService>();

            var container = new ServiceProviderDiContainer(serviceCollection.BuildServiceProvider());

            new DiContainerTestHelper().TestGetInstance <ITestService, TestService>(container);
        }
Beispiel #4
0
        public void GetInstancesTest()
        {
            var serviceCollection = new ServiceCollection();

            serviceCollection.AddTransient <ITestService, TestService>();
            serviceCollection.AddTransient <ITestService, TestServiceWithNoCtorParam>();

            var container = new ServiceProviderDiContainer(serviceCollection.BuildServiceProvider());

            new DiContainerTestHelper().TestGetInstances <ITestService>(container, typeof(TestService), typeof(TestServiceWithNoCtorParam));
        }
Beispiel #5
0
        public void CreateScopeTest()
        {
            var serviceCollection = new ServiceCollection();

            serviceCollection.AddScoped <ITestService, TestService>();

            var container = new ServiceProviderDiContainer(serviceCollection.BuildServiceProvider());

            new DiContainerTestHelper().TestCreateScope <ITestService, TestService>(container);

            new DiContainerTestHelper().TestScopeDisposeDouble(container);
        }
        public void ServiceLocatorTests()
        {
            #pragma warning disable 618
            ServiceLocator.XRemoveDiContainerForUnitTests();
            #pragma warning restore 618

            Assert.Throws <ArgumentNullException>(() => new ServiceProviderDiContainer(null));

            var serviceCollection = new ServiceCollection();
            serviceCollection.AddTransient <ITestService, TestService>();
            serviceCollection.AddTransient <object>();
            var diContainer = new ServiceProviderDiContainer(serviceCollection.BuildServiceProvider());
            ServiceLocator.Init(() => diContainer);

            var service0 = ServiceLocator.GetInstance <ITestService>();
            Assert.True(service0 is TestService);

            var obj0 = ServiceLocator.GetInstance(typeof(ITestService));
            Assert.True(obj0 is TestService);
        }
Beispiel #7
0
        public void TryGetInstance_NoServiceFound_ReturnsFalseAndNull()
        {
            var container = new ServiceProviderDiContainer(new ServiceCollection().BuildServiceProvider());

            new DiContainerTestHelper().TryGetInstance_NoServiceFound_ReturnsFalseAndNull <ITestService>(container);
        }
Beispiel #8
0
        public void GetInstances_NoServicesFound_ReturnsEmptyArray()
        {
            var container = new ServiceProviderDiContainer(new ServiceCollection().BuildServiceProvider());

            new DiContainerTestHelper().GetInstances_NoServicesFound_ReturnsEmptyArray <ITestService>(container);
        }