public void DifferentObjects_BuildUpInterfaceWithManyInterfaceDependencyMethods_Success() { var c = new Container(); c.RegisterType<IEmptyClass, EmptyClass>(); c.RegisterType<ISampleClassWithInterfaceAsParameter, SampleClassWithInterfaceAsParameter>().AsSingleton(); ISampleClassWithManyInterfaceDependencyMethods sampleClass1 = new SampleClassWithManyInterfaceDependencyMethods(); ISampleClassWithManyInterfaceDependencyMethods sampleClass2 = new SampleClassWithManyInterfaceDependencyMethods(); c.BuildUp(sampleClass1, ResolveKind.PartialEmitFunction); c.BuildUp(sampleClass2, ResolveKind.PartialEmitFunction); Assert.IsNotNull(sampleClass1.EmptyClass); Assert.IsNotNull(sampleClass1.SampleClass); Assert.IsNotNull(sampleClass1.SampleClass.EmptyClass); Assert.AreNotEqual(sampleClass1.SampleClass.EmptyClass, sampleClass1.EmptyClass); Assert.IsNotNull(sampleClass2.EmptyClass); Assert.IsNotNull(sampleClass2.SampleClass); Assert.IsNotNull(sampleClass2.SampleClass.EmptyClass); Assert.AreNotEqual(sampleClass2.SampleClass.EmptyClass, sampleClass2.EmptyClass); Assert.AreNotEqual(sampleClass1, sampleClass2); Assert.AreNotEqual(sampleClass1.EmptyClass, sampleClass2.EmptyClass); Assert.AreEqual(sampleClass1.SampleClass, sampleClass2.SampleClass); Assert.AreEqual(sampleClass1.SampleClass.EmptyClass, sampleClass2.SampleClass.EmptyClass); }
public void BuildUpInterfaceWithManyInterfaceDependencyMethods_Success() { var c = new Container(); c.RegisterType<IEmptyClass, EmptyClass>(); c.RegisterType<ISampleClassWithInterfaceAsParameter, SampleClassWithInterfaceAsParameter>(); ISampleClassWithManyInterfaceDependencyMethods sampleClass = new SampleClassWithManyInterfaceDependencyMethods(); c.BuildUp(sampleClass, ResolveKind.PartialEmitFunction); Assert.IsNotNull(sampleClass.EmptyClass); Assert.IsNotNull(sampleClass.SampleClass); }