@@ -22,14 +22,26 @@ TVTOnEditCancelledTests = class
2222 [TearDown]
2323 procedure TearDown ;
2424
25+ [Test]
26+ procedure TestAddColumn ;
27+
28+ [Test]
29+ procedure TestEditNodeFail ;
30+
31+ [Test]
32+ procedure TestEditNode ;
33+
34+ [Test]
35+ procedure TestEditNodeReadOnly ;
36+
2537 [Test]
2638 procedure TestOnEditCancelled ;
2739 end ;
2840
2941implementation
3042
3143uses
32- System.SysUtils;
44+ System.SysUtils, VirtualTrees.Types ;
3345
3446procedure TVTOnEditCancelledTests.Setup ;
3547begin
@@ -42,6 +54,49 @@ procedure TVTOnEditCancelledTests.TearDown;
4254 FreeAndNil(fForm);
4355end ;
4456
57+ procedure TVTOnEditCancelledTests.TestAddColumn ;
58+ begin
59+ var LBeforeColumnCount := fTree.Header.Columns.Count;
60+ fTree.Header.Columns.Add;
61+ var LAfterColumnCount := fTree.Header.Columns.Count;
62+ Assert.AreEqual<Integer>(LAfterColumnCount - LBeforeColumnCount, 1 );
63+ end ;
64+
65+ procedure TVTOnEditCancelledTests.TestEditNode ;
66+ begin
67+ fForm.Show;
68+ fTree.TreeOptions.MiscOptions := fTree.TreeOptions.MiscOptions + [toEditable];
69+ fTree.Parent := fForm;
70+ fTree.Header.Columns.Add;
71+ var LNode := fTree.AddChild(fTree.RootNode);
72+ var LEditNodeResult := fTree.EditNode(LNode, 0 );
73+ var LAfterStates := fTree.TreeStates;
74+ Assert.AreEqual<TVirtualTreeStates>(LAfterStates * [tsEditing], [tsEditing]);
75+ Assert.IsTrue(LEditNodeResult);
76+ end ;
77+
78+ procedure TVTOnEditCancelledTests.TestEditNodeFail ;
79+ begin
80+ fForm.Show;
81+ fTree.TreeOptions.MiscOptions := fTree.TreeOptions.MiscOptions - [toEditable];
82+ fTree.Parent := fForm;
83+ fTree.Header.Columns.Add;
84+ var LNode := fTree.AddChild(fTree.RootNode);
85+ var LEditNodeResult := fTree.EditNode(LNode, 0 );
86+ Assert.IsFalse(LEditNodeResult);
87+ end ;
88+
89+ procedure TVTOnEditCancelledTests.TestEditNodeReadOnly ;
90+ begin
91+ fForm.Show;
92+ fTree.Parent := fForm;
93+ fTree.Header.Columns.Add;
94+ var LNode := fTree.AddChild(fTree.RootNode);
95+ fTree.TreeOptions.MiscOptions := fTree.TreeOptions.MiscOptions + [toReadOnly];
96+ var LEditNodeResult := fTree.EditNode(LNode, 0 );
97+ Assert.IsFalse(LEditNodeResult);
98+ end ;
99+
45100procedure TVTOnEditCancelledTests.TestOnEditCancelled ;
46101begin
47102 fForm.Show;
0 commit comments