public void ClassFactory_CreateChildFactory_Returns_Child_That_Contains_Same_Implementations_And_Singletons() { X x = new X(); _ClassFactory.RegisterInstance <IX>(x); _ClassFactory.Register <IY, Y>(); IClassFactory child = _ClassFactory.CreateChildFactory(); Assert.AreSame(x, child.Resolve <IX>()); Assert.IsInstanceOfType(child.Resolve <IY>(), typeof(Y)); }
public void ClassFactory_CreateChildFactory_Returns_Child_That_Can_Be_Modified_Independently_Of_Parent() { _ClassFactory.Register <IX, X>(); IClassFactory child = _ClassFactory.CreateChildFactory(); child.Register <IX, XX>(); Assert.IsInstanceOfType(_ClassFactory.Resolve <IX>(), typeof(X)); Assert.IsInstanceOfType(child.Resolve <IX>(), typeof(XX)); }
public void ClassFactory_Resolve_Throws_If_InterfaceType_Is_Null() { _ClassFactory.Resolve(null); }