public void HandlesCollectionChangesCorrectly()
{
var collection = new ObservableCollection<TestModel>();
var wrapper = new ChangeNotificationWrapper(collection);
bool itemsAdded = false;
bool itemsRemoved = false;
wrapper.CollectionChanged += (sender, e) =>
{
if (e.OldItems != null)
{
itemsRemoved = true;
}
if (e.NewItems != null)
{
itemsAdded = true;
}
};
var model = new TestModel();
collection.Add(model);
Assert.IsTrue(itemsAdded);
Assert.IsFalse(itemsRemoved);
collection.Remove(model);
Assert.IsTrue(itemsRemoved);
}