public void ObservableItemContentRangeCollection_WhenCreatedWithoutItems_DoesNotNotifyForRemovedItems() { var item = new TestObservableObject(); var collection = new ObservableItemContentRangeCollection <TestObservableObject>(); CustomAsserts.Assert_NotRaises <NotifyCollectionChangedEventArgs>( handler => collection.CollectionChanged += (s, e) => handler.Invoke(s, e), handler => { }, () => item.TestProperty = TestPropertyValue); collection.Add(item); 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); }