public void ResolveAllRetrievesSingletons() { ActivatingServiceLocator locator = new ActivatingServiceLocator(); locator.RegisterTypeMapping(TypeMapping.Create <IMyObject, MyObject>("key1", InstantiationType.AsSingleton)); locator.RegisterTypeMapping(TypeMapping.Create <IMyObject, MyObject2>("key2", InstantiationType.AsSingleton)); Assert.AreSame(locator.GetInstance <IMyObject>("key1"), locator.GetInstance <IMyObject>("key1")); var all1 = locator.GetAllInstances <IMyObject>(); var all2 = locator.GetAllInstances <IMyObject>(); Assert.AreEqual(all1.First(), all2.First()); Assert.AreEqual(all1.Skip(1).First(), all2.Skip(1).First()); }
public void CanResolveAll() { var target = new ActivatingServiceLocator(); target.RegisterTypeMapping <IMyObject, MyObject>("key1"); target.RegisterTypeMapping <IMyObject, MyObject2>("key2"); var result = target.GetAllInstances <IMyObject>(); Assert.IsInstanceOfType(result.First(), typeof(MyObject)); Assert.IsInstanceOfType(result.Skip(1).First(), typeof(MyObject2)); }