[Test] public void MultipleSortUpdate() // OM-9953 { MockComparable[] cmp = new MockComparable [5]; for (int i = 0; i < cmp.Length; i++) { cmp [i] = new MockComparable("Item"); _nodeCollection.Add(cmp [i]); } _nodeCollection.SetItemComparer(null, new Comparer(CultureInfo.CurrentCulture)); cmp [1].Value = "Jtem"; cmp [2].Value = "Jtem"; cmp [3].Value = "Jtem"; _nodeCollection.Update(cmp [1]); _nodeCollection.Update(cmp [2]); _nodeCollection.Update(cmp [3]); Assert.AreEqual("Item", (_nodeCollection.Nodes [0].Data as MockComparable).Value); Assert.AreEqual("Item", (_nodeCollection.Nodes [1].Data as MockComparable).Value); Assert.AreEqual("Jtem", (_nodeCollection.Nodes [2].Data as MockComparable).Value); Assert.AreEqual("Jtem", (_nodeCollection.Nodes [3].Data as MockComparable).Value); Assert.AreEqual("Jtem", (_nodeCollection.Nodes [4].Data as MockComparable).Value); }
[Test] public void RefreshNode() { _nodeCollection.SetItemComparer(null, new Comparer(CultureInfo.CurrentCulture)); MockComparable cmp1 = new MockComparable("Item1"); MockComparable cmp2 = new MockComparable("Item2"); _nodeCollection.Add(cmp1); _nodeCollection.Add(cmp2); cmp1.Value = "Item3"; _nodeCollection.Update(cmp1); Assert.AreEqual(cmp2, _nodeCollection.Nodes [0].Data); Assert.AreEqual(cmp1, _nodeCollection.Nodes [1].Data); }
[Test] public void EqualNodesInComparerUpdate() { _nodeCollection.SetItemComparer(null, new Comparer(CultureInfo.CurrentCulture)); MockComparable cmp1 = new MockComparable("Best"); MockComparable cmp2 = new MockComparable("Rest"); MockComparable cmp3 = new MockComparable("Test"); _nodeCollection.Add(cmp1); _nodeCollection.Add(cmp2); _nodeCollection.Add(cmp3); cmp3.Value = "Best"; _nodeCollection.Update(cmp3); // OM-7898 Assert.AreEqual(cmp2, _nodeCollection.Nodes [2].Data); }
[Test] public void InvalidateOnMove() { _nodeCollection.SetItemComparer(null, new Comparer(CultureInfo.CurrentCulture)); MockComparable cmp1 = new MockComparable("Item1"); MockComparable cmp2 = new MockComparable("Item2"); _nodeCollection.Add(cmp1); _nodeCollection.Add(cmp2); _rowListRenderer.Invalidate += new InvalidateEventHandler(_rowListRenderer_Invalidate); cmp1.Value = "Item3"; _nodeCollection.Update(cmp1); Assert.AreEqual(1, _rowInvalidates.Count); }
[Test] public void FilterUpdateItem() { MockFilter mockFilter = new MockFilter(); _filters.Add(mockFilter); MockComparable cmp = new MockComparable("?Item2"); cmp.SimpleToString = true; _nodeCollection.Add(cmp); VerifyItems(_nodeCollection.VisibleItems.GetEnumerator(), cmp); cmp.Value = "!Item1"; _nodeCollection.Update(cmp); VerifyItems(_nodeCollection.VisibleItems.GetEnumerator() /* empty list */); }
[Test] public void SizeToContentOnUpdate() { SetupSizeToContentColumn(); _controlPainter.SetExpectedSize("MockComparable:LongTest", new Size(20, 10)); _controlPainter.SetExpectedSize("MockComparable:Test", new Size(10, 10)); MockComparable comparable = new MockComparable("Test"); _nodeCollection.Add(comparable); Assert.AreEqual(10, _rowRenderer.ScrollRange); _rowRenderer.ScrollRangeChanged += new EventHandler(HandleScrollRangeChanged); comparable.Value = "LongTest"; _nodeCollection.Update(comparable); Assert.AreEqual(20, _rowRenderer.ScrollRange); }
[Test] public void UpdateMultiMap() { _nodeCollection.SetItemComparer(null, new Comparer(CultureInfo.CurrentCulture)); MockComparable cmp1 = new MockComparable("Item1"); MockComparable cmp2 = new MockComparable("Item2"); JetListViewNode node1 = _nodeCollection.Add(cmp1); JetListViewNode node2 = _nodeCollection.Add(cmp2); _nodeCollection.Add(new MockComparable("Item3"), node1); _nodeCollection.Add(new MockComparable("Item4"), node2); MockComparable theComparable = new MockComparable("Item5"); _nodeCollection.Add(theComparable, node1); _nodeCollection.Add(theComparable, node2); theComparable.Value = "Item0"; _nodeCollection.Update(theComparable); Assert.AreEqual(theComparable, _nodeCollection.Nodes [0].Nodes [0].Data); Assert.AreEqual(theComparable, _nodeCollection.Nodes [1].Nodes [0].Data); }