public void RaisesResetEventWhenAboveTreshold() { var target = new ReactiveBindingList <string>(new string[] { "item1", "item2", "item3" }); var capturedEvents = new List <ListChangedEventArgs>(); target.ListChanged += (o, e) => { capturedEvents.Add(e); }; target.ResetChangeThreshold = 0; target.InsertRange(1, Enumerable.Repeat("added1", 35)); Assert.Equal(1, capturedEvents.Count); Assert.Equal(ListChangedType.Reset, capturedEvents[0].ListChangedType); }
public void RaisesResetEventWhileItemsAddedOnSuppressChanges() { var target = new ReactiveBindingList <string>(new string[] { "item1", "item2", "item3" }); var capturedEvents = new List <ListChangedEventArgs>(); target.ListChanged += (o, e) => { capturedEvents.Add(e); }; using (target.SuppressChangeNotifications()) { target.InsertRange(1, new[] { "item4", "item5", "item6" }); } Assert.Equal(1, capturedEvents.Count); Assert.Equal(ListChangedType.Reset, capturedEvents[0].ListChangedType); }
public void RaisesMultipleEventsListChangedEventOnInsertRange() { var target = new ReactiveBindingList <string>(new string[] { "item1", "item2", "item3" }); var capturedEvents = new List <ListChangedEventArgs>(); target.ListChanged += (o, e) => { capturedEvents.Add(e); }; target.InsertRange(1, new[] { "item4", "item5", "item6" }); Assert.Equal(3, capturedEvents.Count); Assert.True(capturedEvents.All(x => x.ListChangedType == ListChangedType.ItemAdded)); Assert.Equal(1, capturedEvents[0].NewIndex); Assert.Equal(-1, capturedEvents[0].OldIndex); Assert.Equal(2, capturedEvents[1].NewIndex); Assert.Equal(-1, capturedEvents[1].OldIndex); Assert.Equal(3, capturedEvents[2].NewIndex); Assert.Equal(-1, capturedEvents[2].OldIndex); }
public void RaisesResetEventWhenAboveThreshold() { var target = new ReactiveBindingList<string>(new string[] { "item1", "item2", "item3" }); var capturedEvents = new List<ListChangedEventArgs>(); target.ListChanged += (o, e) => { capturedEvents.Add(e); }; target.ResetChangeThreshold = 0; target.InsertRange(1, Enumerable.Repeat("added1",35)); Assert.Equal(1, capturedEvents.Count); Assert.Equal(ListChangedType.Reset, capturedEvents[0].ListChangedType); }
public void RaisesResetEventWhileItemsAddedOnSuppressChanges() { var target = new ReactiveBindingList<string>(new string[] { "item1", "item2", "item3" }); var capturedEvents = new List<ListChangedEventArgs>(); target.ListChanged += (o, e) => { capturedEvents.Add(e); }; using (target.SuppressChangeNotifications()) { target.InsertRange(1, new[] { "item4", "item5", "item6" }); } Assert.Equal(1, capturedEvents.Count); Assert.Equal(ListChangedType.Reset, capturedEvents[0].ListChangedType); }
public void RaisesMultipleEventsListChangedEventOnInsertRange() { var target = new ReactiveBindingList<string>(new string[] { "item1", "item2", "item3" }); var capturedEvents = new List<ListChangedEventArgs>(); target.ListChanged += (o, e) => { capturedEvents.Add(e); }; target.InsertRange(1,new[] { "item4", "item5", "item6" }); Assert.Equal(3, capturedEvents.Count); Assert.True(capturedEvents.All(x => x.ListChangedType == ListChangedType.ItemAdded)); Assert.Equal(1, capturedEvents[0].NewIndex); Assert.Equal(-1, capturedEvents[0].OldIndex); Assert.Equal(2, capturedEvents[1].NewIndex); Assert.Equal(-1, capturedEvents[1].OldIndex); Assert.Equal(3, capturedEvents[2].NewIndex); Assert.Equal(-1, capturedEvents[2].OldIndex); }