public void should_instanciate_and_contain_iobjectbuilder_as_a_singleton() { var objectBoss = new ObjectBoss(); objectBoss.Configure(x => x.Add<SimpleObjectType>()); Assert.IsTrue(objectBoss.ContainsUsing<IObjectBuilder, ObjectBoss>()); Assert.IsTrue(objectBoss.GetSingletonCount() > 0); }
public void should_be_able_to_add_an_interface_as_a_singleton() { var objectBoss = new ObjectBoss(); objectBoss.Configure(x => x.AddUsing<ISimpleInterface, SimpleObjectType>().Singleton()); var simpleObject1 = objectBoss.GetInstance<ISimpleInterface>(); var simpleObject2 = objectBoss.GetInstance<ISimpleInterface>(); Assert.IsTrue(objectBoss.GetSingletonCount() == 2); Assert.IsNotNull(simpleObject1); Assert.IsNotNull(simpleObject2); Assert.IsTrue(simpleObject1.Id == simpleObject2.Id); }
public void should_add_object_as_singleton_and_get_the_same_instance_whenever_it_is_retrieved() { var objectBoss = new ObjectBoss(); objectBoss.Configure(x => x.Add<SimpleObjectType>().Singleton()); var simpleObject1 = objectBoss.GetInstance<SimpleObjectType>(); var simpleObject2 = objectBoss.GetInstance<SimpleObjectType>(); Assert.IsTrue(objectBoss.GetSingletonCount() == 2); Assert.IsNotNull(simpleObject1); Assert.IsNotNull(simpleObject2); Assert.IsTrue(simpleObject1.Id == simpleObject2.Id); }