示例#1
0
        public void RegisterType_Multiple_Resolve_InstanceIsInStore()
        {
            // Assign
            DefaultDependencyContainer container = new DefaultDependencyContainer(this.store);

            // Act
            container.RegisteType(typeof(IMainClass), typeof(MainClass));
            container.RegisteType(typeof(IMainClass), typeof(MainClass2));
            container.RegisteType(typeof(IMainClass), typeof(MainClass3));
            container.RegisteType(typeof(ISubClass1), typeof(SubClass1));
            container.RegisteType(typeof(ISubClass2), typeof(SubClass2));

            Assert.AreEqual(0, this.store.Count);
            container.ResolveAll(typeof(IMainClass));

            // Assert
            Assert.AreEqual(5, container.Registrations.Count);
        }
示例#2
0
        public void ResolveAll_ReturnsInstance()
        {
            // Assign
            DefaultDependencyContainer container = new DefaultDependencyContainer();

            container.RegisteType(typeof(ISubClass1), typeof(SubClass1));
            container.RegisteType(typeof(IMainClass), typeof(MainClass));
            container.RegisteType(typeof(IMainClass), typeof(MainClass2));
            container.RegisteType(typeof(IMainClass), typeof(MainClass3));
            container.RegisteType(typeof(ISubClass2), typeof(SubClass2));

            // Act
            var result = container.ResolveAll(typeof(IMainClass));

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(3, result.Count());
        }
        public void RegisterType_Multiple_Resolve_InstanceIsInStore()
        {
            // Assign
            DefaultDependencyContainer container = new DefaultDependencyContainer(this.store);

            // Act
            container.RegisteType(typeof(IMainClass), typeof(MainClass));
            container.RegisteType(typeof(IMainClass), typeof(MainClass2));
            container.RegisteType(typeof(IMainClass), typeof(MainClass3));
            container.RegisteType(typeof(ISubClass1), typeof(SubClass1));
            container.RegisteType(typeof(ISubClass2), typeof(SubClass2));

            Assert.AreEqual(0, this.store.Count);
            container.ResolveAll(typeof(IMainClass));

            // Assert
            Assert.AreEqual(5, container.Registrations.Count);
        }
        public void ResolveAll_ReturnsInstance()
        {
            // Assign
            DefaultDependencyContainer container = new DefaultDependencyContainer();
            container.RegisteType(typeof(ISubClass1), typeof(SubClass1));
            container.RegisteType(typeof(IMainClass), typeof(MainClass));
            container.RegisteType(typeof(IMainClass), typeof(MainClass2));
            container.RegisteType(typeof(IMainClass), typeof(MainClass3));
            container.RegisteType(typeof(ISubClass2), typeof(SubClass2));

            // Act
            var result = container.ResolveAll(typeof(IMainClass));

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(3, result.Count());
        }