public void UnsubscribePropertyChanged() { var testNotifyPropertyChangedObject = new TestNotifyPropertyChangedObject(); IMultiDimensionalArray<TestNotifyPropertyChangedObject> array = new MultiDimensionalArray<TestNotifyPropertyChangedObject>(); //remove the item from the array array.Insert(0, testNotifyPropertyChangedObject); TestHelper.AssertPropertyChangedIsFired((INotifyPropertyChanged)array, 1, testNotifyPropertyChangedObject.FireChanged); array.Remove(testNotifyPropertyChangedObject); TestHelper.AssertPropertyChangedIsFired((INotifyPropertyChanged)array, 0, testNotifyPropertyChangedObject.FireChanged); //reinsert & replace array.Insert(0,testNotifyPropertyChangedObject); array[0] = new TestNotifyPropertyChangedObject {Name = "new"}; TestHelper.AssertPropertyChangedIsFired((INotifyPropertyChanged)array, 0, testNotifyPropertyChangedObject.FireChanged); //removeat array.Insert(0, testNotifyPropertyChangedObject); array.RemoveAt(0); TestHelper.AssertPropertyChangedIsFired((INotifyPropertyChanged)array, 0, testNotifyPropertyChangedObject.FireChanged); }
public void ReadOnlyInsert() { var array = new MultiDimensionalArray(true, false, 1, new int[1]); array.Insert(0, 2); }
public void BubblePropertyChangedOfInsertObject2() { var testNotifyPropertyChangedObject = new TestNotifyPropertyChangedObject(); var array = new MultiDimensionalArray<TestNotifyPropertyChangedObject> { IsAutoSorted = false }; array.Insert(0, testNotifyPropertyChangedObject); TestHelper.AssertPropertyChangedIsFired((INotifyPropertyChanged)array, 1, testNotifyPropertyChangedObject.FireChanged); }
public void UpdateMinMax() { var array = new MultiDimensionalArray<double>(); Assert.IsNull(array.MinValue); Assert.IsNull(array.MaxValue); //action! change the array array.Add(0.0d); //assert min max got updated Assert.AreEqual(0.0d,array.MinValue); Assert.AreEqual(0.0d, array.MaxValue); //make sure we got insert covered array.Insert(1,1.0d); Assert.AreEqual(1.0d, array.MaxValue); }