public void TestWithCollectionChanges() { DataContainerTest2 container = new DataContainerTest2(); container.DirtyObserver.Reset(); var collection1 = new ObservableCollection <DataContainerTest2>(); container.Children = collection1; Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); var child1 = new DataContainerTest2(); container.Children.Add(child1); Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); var child2 = new DataContainerTest2(); container.Children.Add(child2); Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); container.Children.Remove(child1); Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); container.Children = null; Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); collection1.Add(new DataContainerTest2()); Assert.That(container.DirtyObserver.Dirty == false); }
public void TestWithCollectionChanges2() { DataContainerTest2 container = new DataContainerTest2(); container.DirtyObserver.Reset(); var collection1 = new ObservableCollection <DataContainerTest2>(); var coll1Child1 = new DataContainerTest2(); var coll1Child2 = new DataContainerTest2(); collection1.Add(coll1Child1); collection1.Add(coll1Child2); container.Children = collection1; Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); coll1Child2.Value2 = 10; Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); var collection3 = new ObservableCollection <DataContainerTest2>(); var coll1Child31 = new DataContainerTest2(); var coll1Child32 = new DataContainerTest2(); collection3.Add(coll1Child31); collection3.Add(coll1Child32); container.Children = collection3; Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); coll1Child2.Value2 = 10; Assert.That(container.DirtyObserver.Dirty == false); container.DirtyObserver.Reset(); coll1Child32.Value2 = 10; Assert.That(container.DirtyObserver.Dirty == true); //not supported //container.DirtyObserver.Reset(); //container.Children.Clear(); //Assert.That(container.DirtyObserver.Dirty == true); //container.DirtyObserver.Reset(); //coll1Child32.Value2 = 10; //Assert.That(container.DirtyObserver.Dirty == false); }
public void TestWithChangesInChildren() { DataContainerTest2 container = new DataContainerTest2(); container.Children = new ObservableCollection <DataContainerTest2>(); Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); container.DirtyObserver.Name = "Parent"; var child1 = new DataContainerTest2(); child1.DirtyObserver.Name = "Child1"; container.Children.Add(child1); Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); var child2 = new DataContainerTest2(); child1.DirtyObserver.Name = "Child2"; container.Children.Add(child2); Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); child1.Value2 = 10; Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); child1.Value2 = 10; Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); container.Children.Remove(child1); Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); child1.Value2 = 10; Assert.That(container.DirtyObserver.Dirty == false); container.DirtyObserver.Reset(); child2.Value2 = 10; Assert.That(container.DirtyObserver.Dirty == true); }
public void TestWithChangesInDirectChildren() { DataContainerTest2 container = new DataContainerTest2(); container.Children = new ObservableCollection <DataContainerTest2>(); Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); container.DirtyObserver.Name = "Parent"; Assert.That(container.DirtyObserver.Dirty == false); container.DirtyObserver.Reset(); container.Container1 = new DataContainerTest2(); Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); container.Container1.Value2 = 10; Assert.That(container.DirtyObserver.Dirty == true); container.DirtyObserver.Reset(); container.Container1 = null; Assert.That(container.DirtyObserver.Dirty == true); }