コード例 #1
0
ファイル: ContainerTests.cs プロジェクト: ChrisFulstow/Idiocy
        public void Resolve_Concrete_Type_With_Params()
        {
            var container = new IdiocyContainer();
            container.Register<Component, IService>();
            container.Register<ComponentWithParams, IServiceWithParams>();
            var component = container.Resolve<IServiceWithParams>();

            Assert.AreEqual(typeof(ComponentWithParams), component.GetType());
            Assert.AreEqual(typeof(Component), component.Service.GetType());
        }
コード例 #2
0
ファイル: ContainerTests.cs プロジェクト: ChrisFulstow/Idiocy
        public void Transient_Instances_Are_Unique()
        {
            var container = new IdiocyContainer();
            container.Register<Component, IService>();

            var service1 = container.Resolve<IService>();
            var service2 = container.Resolve<IService>();

            Assert.AreNotSame(service1, service2);
        }
コード例 #3
0
ファイル: ContainerTests.cs プロジェクト: ChrisFulstow/Idiocy
        public void Singleton_Instances_Are_Same()
        {
            var container = new IdiocyContainer();
            container.Register<Component, IService>(Lifetime.Singleton);

            var service1 = container.Resolve<IService>();
            var service2 = container.Resolve<IService>();

            Assert.AreSame(service1, service2);
        }