Beispiel #1
0
        public void MyServiceContainerGetFirstServiceGeneric()
        {
            ServiceContainer parentServiceContainer = new ServiceContainer();
            ServiceContainer serviceContainer       = new ServiceContainer(parentServiceContainer);
            ServiceContainer serviceSubContainer    = new ServiceContainer();

            parentServiceContainer.AddService(new MyGenericServiceProvider <int>());
            parentServiceContainer.AddService(new MyGenericServiceProvider <int>());
            parentServiceContainer.AddService(new MyGenericServiceProvider <double>());
            parentServiceContainer.AddService(new MyAddService());
            serviceContainer.AddService(new MyReverseGenericServiceProvider <int>());
            serviceContainer.AddService(new MyGenericServiceProvider <int>());
            serviceContainer.AddService(new MyGenericServiceProvider <string>());
            serviceContainer.AddService(serviceSubContainer);
            serviceSubContainer.AddService(new MyReverseGenericServiceProvider <int>());
            serviceSubContainer.AddService(new MyReverseGenericServiceProvider <long>());
            serviceSubContainer.AddService(new MyGenericService2Provider <string, int>());
            serviceSubContainer.AddService(new MyGenericService2Provider <string, float>());

            IMyGenericListService <int> service1 = serviceContainer.GetService <IMyGenericListService <int> >();

            Assert.IsNotNull(service1);

            IMyGenericListService <double> service2 = serviceContainer.GetService <IMyGenericListService <double> >();

            Assert.IsNotNull(service2);

            IMyAddService service3 = serviceContainer.GetService <IMyAddService>();

            Assert.IsNotNull(service3);

            MyGenericServiceProvider <string> service4 = serviceContainer.GetService <MyGenericServiceProvider <string> >();

            Assert.IsNotNull(service4);

            MyReverseGenericServiceProvider <long> service5 = serviceContainer.GetService <MyReverseGenericServiceProvider <long> >();

            Assert.IsNotNull(service5);

            MyGenericService2Provider <string, int> service6 = serviceContainer.GetService <MyGenericService2Provider <string, int> >();

            Assert.IsNotNull(service6);

            IMyGenericListService <float> service7 = serviceContainer.GetService <IMyGenericListService <float> >();

            Assert.IsNull(service7);

            MyGenericService2Provider <string, string> service8 = serviceContainer.GetService <MyGenericService2Provider <string, string> >();

            Assert.IsNull(service8);

            IMySubService service9 = serviceContainer.GetService <IMySubService>();

            Assert.IsNull(service9);
        }
Beispiel #2
0
        public void MyServiceProvider()
        {
            MyServiceProvider myProvider = new MyServiceProvider();
            IMyAddService     myAdd      = myProvider.GetService <IMyAddService>();

            Assert.AreEqual(0, myAdd.Add(0, 0));
            Assert.AreEqual(2, myAdd.Add(1, 1));
            Assert.AreEqual(0, myAdd.Add(1, -1));
            Assert.AreEqual(5, myAdd.Add(4, 1));

            IMySubService mySub = myProvider.GetService <IMySubService>();

            Assert.AreEqual(0, mySub.Sub(0, 0));
            Assert.AreEqual(2, mySub.Sub(2, 0));
            Assert.AreEqual(0, mySub.Sub(1, 1));
            Assert.AreEqual(2, mySub.Sub(1, -1));
            Assert.AreEqual(3, mySub.Sub(4, 1));
        }