public void When_PropertyChanged_Suppressed_Then_NotifyPropertyChanged_Does_Not_Fire_PropertyChanged() { // Arrange var eventCount = 0; var sut = new CollectionChangedHelper<int>(this); sut.PropertyChanged += (sender, args) => ++eventCount; // Act using (sut.SuppressPropertyChanged()) sut.NotifyPropertyChanged("Age", "UserData-1"); // Assert Assert.AreEqual(0, eventCount); }
public void When_NotifyPropertyValueChanged_Then_Fires_PropertyChange_On_Event_With_Correct_Values() { // Arrange var propertyChanges = new List<PropertyChangedEventArgsEx>(); var sut = new CollectionChangedHelper<int>(this); sut.PropertyChanged += (sender, args) => propertyChanges.Add((PropertyChangedEventArgsEx) args); var expectedPropertyChange = new PropertyChangedEventArgsEx("Age", "UserData-2"); // Act sut.NotifyPropertyChanged("Age", "UserData-2"); // Assert Assert.AreEqual(1, propertyChanges.Count); Assert.AreEqual(expectedPropertyChange, propertyChanges[0]); }
public void When_NotifyReplace_Then_Action_Replace_Raised() { // Arrange var sut = new CollectionChangedHelper<int>(this); var results = new List<NotifyCollectionChangedEventArgs>(); var expected = new[] { new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Replace, 12, (object) 14, 9), new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Replace, 100, (object) 200, 80), }; sut.CollectionChanged += (o, e) => results.Add(e); // Act sut.NotifyReplace(12, 14, 9); sut.NotifyReplace(100, 200, 80); // Assert KKAssert.AreEqualByValue(expected, results); }
public void When_NotifyAdd_Then_Action_Add_Raised() { // Arrange var sut = new CollectionChangedHelper<int>(this); var results = new List<NotifyCollectionChangedEventArgs>(); var expected = new[] { new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Add, 10, 0), new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Add, 99, 1), }; sut.CollectionChanged += (o, e) => results.Add(e); // Act sut.NotifyAdd(10, 0); sut.NotifyAdd(99, 1); // Assert KKAssert.AreEqualByValue(expected, results); }
private async void CameraRoll_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) { await CollectionChangedHelper.Handle <VideoItem>(_cameraRoll, e); }
private async void Shows_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) { await CollectionChangedHelper.Handle <TvShow>(_shows, e); }
public void When_SetPropertyValue_New_Value_Then_Fires_PropertyChanged() { // Arrange var propertyChanges = new List<PropertyChangedEventArgsEx>(); var sut = new CollectionChangedHelper<int>(this); sut.PropertyChanged += (sender, args) => propertyChanges.Add((PropertyChangedEventArgsEx) args); var age = 10; var expectedPropertyChange = new PropertyChangedEventArgsEx("Age", "UserData-1"); // Act sut.SetPropertyValue(ref age, 17, "Age", "UserData-1"); // Assert Assert.AreEqual(1, propertyChanges.Count); Assert.AreEqual(expectedPropertyChange, propertyChanges[0]); }
public void When_SetPropertyValue_Same_Value_Then_Does_Not_Fire_PropertyChanged() { // Arrange var eventCount = 0; var sut = new CollectionChangedHelper<int>(this); sut.PropertyChanged += (sender, args) => ++eventCount; ; var age = 10; // Act sut.SetPropertyValue(ref age, 10, "Age", "UserData-1"); // Assert Assert.AreEqual(0, eventCount); }