public void CanAddSameObjectWithManyNames() { TestableManagedObjectCollection <object> collection = CreateManagedObjectCollection(); object obj = new object(); collection.Add(obj, "Foo"); collection.Add(obj, "Bar"); Assert.AreEqual(1, collection.LifetimeContainer.Count); Assert.AreSame(obj, collection.Get("Foo")); Assert.AreSame(obj, collection.Get("Bar")); }
public void GetFiltersReturnedCollectionWithPredicate() { Predicate <object> filter = delegate(object obj) { return(obj is MockDataObject); }; TestableManagedObjectCollection <object> collection = CreateManagedObjectCollection(SearchMode.Local, null, filter); object o1 = collection.AddNew <object>("One"); MockDataObject o2 = collection.AddNew <MockDataObject>("Two"); Assert.IsNull(collection.Get("One")); Assert.AreSame(o2, collection.Get("Two")); }
public void CanAddNamedObjectAndFindItByName() { TestableManagedObjectCollection <object> collection = CreateManagedObjectCollection(); object obj = collection.AddNew <object>("foo"); Assert.AreSame(obj, collection.Get("foo")); }
public void GetCanSearchUpTheLocatorChain() { TestableManagedObjectCollection <object> parentCollection = CreateManagedObjectCollection(SearchMode.Up); TestableManagedObjectCollection <object> childCollection = new TestableManagedObjectCollection <object>(parentCollection); object obj = parentCollection.AddNew <object>("Foo"); Assert.AreSame(obj, childCollection.Get("Foo")); }
public void AddNewAddsToLocatorAndLifetimeContainer() { TestableManagedObjectCollection <object> collection = CreateManagedObjectCollection(); object obj = collection.AddNew(typeof(object), "Foo"); Assert.IsTrue(collection.LifetimeContainer.Contains(obj)); Assert.AreEqual(obj, collection.Get("Foo")); }
public void GetDoesNotReturnReplacedObject() { TestableManagedObjectCollection <object> parentCollection = CreateManagedObjectCollection(SearchMode.Up); TestableManagedObjectCollection <object> childCollection = new TestableManagedObjectCollection <object>(parentCollection); object obj1 = parentCollection.AddNew <object>("Foo"); object obj2 = childCollection.AddNew <object>("Foo"); Assert.AreSame(obj2, childCollection.Get("Foo")); }
public void GetDoesNotCheckParentCollection() { TestableManagedObjectCollection <object> parentCollection = CreateManagedObjectCollection(); TestableManagedObjectCollection <object> childCollection = new TestableManagedObjectCollection <object>(parentCollection); object obj = new object(); parentCollection.Add(obj, "Foo"); Assert.IsNull(childCollection.Get("Foo")); }
public void GetForObjectNotInCollectionReturnsNull() { TestableManagedObjectCollection <object> collection = CreateManagedObjectCollection(); Assert.IsNull(collection.Get("bar")); }
public void GetWithNullIDThrows() { TestableManagedObjectCollection <object> collection = CreateManagedObjectCollection(); collection.Get(null); }