Beispiel #1
0
        public void DemandAddedServiceFromParentGetsReplacedInParentEvenWhenAskedForFromChild_Generic()
        {
            TestableServiceCollection parent = CreateServiceCollection();
            TestableServiceCollection child  = new TestableServiceCollection(parent);

            parent.AddOnDemand <MockDemandService>();
            MockDemandService svc = child.Get <MockDemandService>();

            Assert.AreSame(svc, parent.Locator.Get(new DependencyResolutionLocatorKey(typeof(MockDemandService), null)));
        }
        public void CanAddDemandAddServiceAndItWontBeCreatedUntilAskedFor()
        {
            TestableServiceCollection services = CreateServiceCollection();

            MockDemandService.WasCreated = false;

            services.AddOnDemand(typeof(MockDemandService));
            Assert.IsFalse(MockDemandService.WasCreated);
            Assert.IsTrue(services.Contains <MockDemandService>());
            Assert.IsFalse(MockDemandService.WasCreated);

            MockDemandService svc = services.Get <MockDemandService>();

            Assert.IsTrue(MockDemandService.WasCreated);
        }