diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/simpleTests.py | 29 | ||||
| -rw-r--r-- | test/unit/testSelection.cxx | 90 |
2 files changed, 119 insertions, 0 deletions
diff --git a/test/simpleTests.py b/test/simpleTests.py index 020b72e99..0a14a4bdb 100644 --- a/test/simpleTests.py +++ b/test/simpleTests.py @@ -260,6 +260,13 @@ class TestSimple(unittest.TestCase): self.assertEqual(self.ed.CanUndo(), 0) self.ed.UndoCollection = 1 + def testDragDrop(self): + self.assertEqual(self.ed.DragDropEnabled, 1) + self.ed.DragDropEnabled = 0 + self.assertEqual(self.ed.DragDropEnabled, 0) + self.ed.DragDropEnabled = 1 + self.assertEqual(self.ed.DragDropEnabled, 1) + def testGetColumn(self): self.ed.AddText(1, b"x") self.assertEqual(self.ed.GetColumn(0), 0) @@ -1967,6 +1974,28 @@ class TestMultiSelection(unittest.TestCase): self.assertEqual(self.ed.GetSelectionNStart(0), 2) self.assertEqual(self.ed.GetSelectionNEnd(0), 3) + self.ed.SetSelectionNStart(0, 1) + self.assertEqual(self.ed.GetSelectionNAnchor(0), 1) + self.assertEqual(self.ed.GetSelectionNCaret(0), 3) + self.assertEqual(self.ed.GetSelectionNStart(0), 1) + self.assertEqual(self.ed.GetSelectionNEnd(0), 3) + + self.ed.SetSelectionNAnchor(0, 2) + self.ed.SetSelectionNCaret(0, 2) + self.ed.SetSelectionNStart(0, 9) + self.assertEqual(self.ed.GetSelectionNAnchor(0), 9) + self.assertEqual(self.ed.GetSelectionNCaret(0), 9) + self.assertEqual(self.ed.GetSelectionNStart(0), 9) + self.assertEqual(self.ed.GetSelectionNEnd(0), 9) + + self.ed.SetSelectionNAnchor(0, 2) + self.ed.SetSelectionNCaret(0, 3) + self.ed.SetSelectionNStart(0, 9) + self.assertEqual(self.ed.GetSelectionNAnchor(0), 9) + self.assertEqual(self.ed.GetSelectionNCaret(0), 9) + self.assertEqual(self.ed.GetSelectionNStart(0), 9) + self.assertEqual(self.ed.GetSelectionNEnd(0), 9) + def test2Selections(self): self.ed.SetSelection(1, 2) self.ed.AddSelection(4, 5) diff --git a/test/unit/testSelection.cxx b/test/unit/testSelection.cxx index ab0065624..76eebca21 100644 --- a/test/unit/testSelection.cxx +++ b/test/unit/testSelection.cxx @@ -198,6 +198,96 @@ TEST_CASE("SelectionRange") { REQUIRE(thin == single); } + SECTION("StartEndSet") { + { + SelectionRange range; + + range.StartSet(SelectionPosition(2)); + range.EndSet(SelectionPosition(3)); + REQUIRE(range.Start() == SelectionPosition(2)); + REQUIRE(range.End() == SelectionPosition(3)); + REQUIRE(range == SelectionRange(3, 2)); + + range.StartSet(SelectionPosition(1)); + REQUIRE(range.Start() == SelectionPosition(1)); + REQUIRE(range.End() == SelectionPosition(3)); + REQUIRE(range == SelectionRange(3, 1)); + } + + { + // Outside after + SelectionRange range(2, 1); + range.StartSet(SelectionPosition(3)); + REQUIRE(range.Start() == SelectionPosition(3)); + REQUIRE(range.End() == SelectionPosition(3)); + REQUIRE(range == SelectionRange(3, 3)); + } + + { + // Outside after + SelectionRange range(2, 1); + range.EndSet(SelectionPosition(3)); + REQUIRE(range.Start() == SelectionPosition(1)); + REQUIRE(range.End() == SelectionPosition(3)); + REQUIRE(range == SelectionRange(3, 1)); + } + + { + // Outside before + SelectionRange range(2, 1); + range.StartSet(SelectionPosition(0)); + REQUIRE(range.Start() == SelectionPosition(0)); + REQUIRE(range.End() == SelectionPosition(2)); + REQUIRE(range == SelectionRange(2, 0)); + } + + { + // Outside before + SelectionRange range(2, 1); + range.EndSet(SelectionPosition(0)); + REQUIRE(range.Start() == SelectionPosition(0)); + REQUIRE(range.End() == SelectionPosition(0)); + REQUIRE(range == SelectionRange(0, 0)); + } + + { + // Inside + SelectionRange range(3, 1); + range.EndSet(SelectionPosition(2)); + REQUIRE(range.Start() == SelectionPosition(1)); + REQUIRE(range.End() == SelectionPosition(2)); + REQUIRE(range == SelectionRange(2, 1)); + } + + { + // Inside + SelectionRange range(3, 1); + range.StartSet(SelectionPosition(2)); + REQUIRE(range.Start() == SelectionPosition(2)); + REQUIRE(range.End() == SelectionPosition(3)); + REQUIRE(range == SelectionRange(3, 2)); + } + + { + // Empty then outside + SelectionRange range(2); + range.StartSet(SelectionPosition(9)); + REQUIRE(range.Start() == SelectionPosition(9)); + REQUIRE(range.End() == SelectionPosition(9)); + REQUIRE(range == SelectionRange(9, 9)); + } + + { + // Empty then outside + SelectionRange range(2); + range.StartSet(SelectionPosition(0)); + REQUIRE(range.Start() == SelectionPosition(0)); + REQUIRE(range.End() == SelectionPosition(2)); + REQUIRE(range == SelectionRange(2, 0)); + } + + } + } TEST_CASE("Selection") { |
