public void SingletonLifetime(IFrameworkAdapter framework)
        {
            framework.RegisterSingleton <IService, IndependentService>();
            var instance1 = framework.Resolve <IService>();
            var instance2 = framework.Resolve <IService>();

            Assert.Same(instance1, instance2);
        }
Exemple #2
0
        public void TransientFactoryUsedBySingletonStillCreatesTransient(IFrameworkAdapter framework)
        {
            framework.RegisterTransient <IService, IndependentService>();
            framework.RegisterSingleton <ServiceWithFuncConstructorDependency>();

            var service = framework.Resolve <ServiceWithFuncConstructorDependency>();
            var first   = service.Factory();
            var second  = service.Factory();

            Assert.NotSame(first, second);
        }
 public static void RegisterTransient <TService>(this IFrameworkAdapter container)
 {
     container.RegisterSingleton <TService, TService>();
 }
 public static void RegisterSingleton <TService, TImplementation>(this IFrameworkAdapter container)
     where TImplementation : TService
 {
     container.RegisterSingleton(typeof(TService), typeof(TImplementation));
 }