public void Removing_Item_Should_Raise_CollectionChanged() { var target = new PerspexList <int>(new[] { 1, 2, 3 }); var raised = false; target.CollectionChanged += (s, e) => { Assert.Equal(target, s); Assert.Equal(NotifyCollectionChangedAction.Remove, e.Action); Assert.Equal(new[] { 3 }, e.OldItems.Cast <int>()); Assert.Equal(2, e.OldStartingIndex); raised = true; }; target.Remove(3); Assert.True(raised); }
public void Removing_Items_Should_Fire_LogicalChildren_CollectionChanged() { var target = new ItemsControl(); var items = new PerspexList <string> { "Foo", "Bar" }; var called = false; target.Template = GetTemplate(); target.Items = items; target.ApplyTemplate(); ((ILogical)target).LogicalChildren.CollectionChanged += (s, e) => called = e.Action == NotifyCollectionChangedAction.Remove; items.Remove("Bar"); Assert.True(called); }
public void Removing_Items_Should_Fire_LogicalChildren_CollectionChanged() { var target = new ItemsControl(); var items = new PerspexList<string> { "Foo", "Bar" }; var called = false; target.Template = this.GetTemplate(); target.Items = items; target.ApplyTemplate(); ((ILogical)target).LogicalChildren.CollectionChanged += (s, e) => called = e.Action == NotifyCollectionChangedAction.Remove; items.Remove("Bar"); Assert.True(called); }
public void Removing_Item_Should_Raise_CollectionChanged() { var target = new PerspexList<int>(new[] { 1, 2, 3 }); var raised = false; target.CollectionChanged += (s, e) => { Assert.Equal(target, s); Assert.Equal(NotifyCollectionChangedAction.Remove, e.Action); Assert.Equal(new[] { 3 }, e.OldItems.Cast<int>()); Assert.Equal(2, e.OldStartingIndex); raised = true; }; target.Remove(3); Assert.True(raised); }