public void SutIsContainerExtension()
 {
     // Fixture setup
     // Exercise system
     var sut = new CacheLifetimeStrategyExtension();
     // Verify outcome
     Assert.IsAssignableFrom<UnityContainerExtension>(sut);
     // Teardown
 }
        public void SutIsContainerExtension()
        {
            // Fixture setup
            // Exercise system
            var sut = new CacheLifetimeStrategyExtension();

            // Verify outcome
            Assert.IsAssignableFrom <UnityContainerExtension>(sut);
            // Teardown
        }
        public void InitializeAddsReleasingStrategyToContext()
        {
            // Fixture setup
            var strategies = new StagedStrategyChain<UnityBuildStage>();

            var contextStub = new Mock<ExtensionContext> { CallBase = true };
            contextStub.SetupGet(ctx => ctx.Strategies).Returns(strategies);

            var sut = new CacheLifetimeStrategyExtension();
            // Exercise system
            sut.InitializeExtension(contextStub.Object);
            // Verify outcome
            Assert.True(strategies.MakeStrategyChain().OfType<CacheReleasingLifetimeStrategy>().Any());
            // Teardown
        }
        public void InitializeAddsReleasingStrategyToContext()
        {
            // Fixture setup
            var strategies = new StagedStrategyChain <UnityBuildStage>();

            var contextStub = new Mock <ExtensionContext> {
                CallBase = true
            };

            contextStub.SetupGet(ctx => ctx.Strategies).Returns(strategies);

            var sut = new CacheLifetimeStrategyExtension();

            // Exercise system
            sut.InitializeExtension(contextStub.Object);
            // Verify outcome
            Assert.True(strategies.MakeStrategyChain().OfType <CacheReleasingLifetimeStrategy>().Any());
            // Teardown
        }