public void AddSingletonInstanceDelegateShouldReturnNewInstance()
        {
            var             testType = new TestType();
            TestTypeFactory factory  = () => testType;

            var runtime = new ContainerBuilder()
                          .AddSingleton(factory)
                          .BuildRuntime();

            var resolvedFactory1 = runtime.GetService <TestTypeFactory>();
            var resolvedFactory2 = runtime.GetService <TestTypeFactory>();

            resolvedFactory1.Should().BeSameAs(factory);
            resolvedFactory2.Should().BeSameAs(factory);
            resolvedFactory1().Should().BeSameAs(testType);
            resolvedFactory2().Should().BeSameAs(testType);
        }
 public DelegateClass(TestTypeFactory factory)
 {
     TestType = factory();
 }