public void ObservableItemContentRangeCollection_WhenCreatedWithoutItems_CreatesEmptyCollection() { var collection = new ObservableItemContentRangeCollection <ObservableObject>(); Assert.IsAssignableFrom <ObservableCollection <ObservableObject> >(collection); Assert.Empty(collection); }
public void ObservableItemContentRangeCollection_WhenCreatedWithItems_AddsAllItems( IEnumerable <ObservableObject> items) { var collection = new ObservableItemContentRangeCollection <ObservableObject>(items); Assert.IsAssignableFrom <ObservableCollection <ObservableObject> >(collection); Assert.Equal(items.Count(), collection.Count); Assert.Equal(collection, items); }
public void ObservableItemContentRangeCollection_WhenCreatedWithItems_DoesNotNotifyForRemovedItems() { var item = new TestObservableObject(); var items = new List <TestObservableObject>() { item, new TestObservableObject(), new TestObservableObject() }; var collection = new ObservableItemContentRangeCollection <TestObservableObject>(items); collection.Remove(item); CustomAsserts.Assert_NotRaises <NotifyCollectionChangedEventArgs>( handler => collection.CollectionChanged += (s, e) => handler.Invoke(s, e), handler => { }, () => item.TestProperty = TestPropertyValue2); }
public void ObservableItemContentRangeCollection_WhenCreatedWithoutItems_NotifiesForAddedItems() { var item = new TestObservableObject(); var collection = new ObservableItemContentRangeCollection <TestObservableObject>(); collection.Add(item); var itemIndex = collection.IndexOf(item); var raisedEvent = Assert.Raises <NotifyCollectionChangedEventArgs>( handler => collection.CollectionChanged += (s, e) => handler.Invoke(s, e), handler => { }, () => item.TestProperty = TestPropertyValue); Assert.NotNull(raisedEvent); Assert.Equal(NotifyCollectionChangedAction.Replace, raisedEvent.Arguments.Action); Assert.Equal(itemIndex, raisedEvent.Arguments.NewStartingIndex); Assert.Equal(itemIndex, raisedEvent.Arguments.OldStartingIndex); }