diff options
author | nyamatongwe <devnull@localhost> | 2012-09-12 13:44:09 +1000 |
---|---|---|
committer | nyamatongwe <devnull@localhost> | 2012-09-12 13:44:09 +1000 |
commit | 75bed4f0a73a0ef3a0d69026f21bc280b2232513 (patch) | |
tree | 6a9d3cfe610f0f6c16fb0d47e406bdff5625a340 /test/unit/testRunStyles.cxx | |
parent | 580fe992b298ebe0dda18b1d286b0a06bc7d5e3b (diff) | |
download | scintilla-mirror-75bed4f0a73a0ef3a0d69026f21bc280b2232513.tar.gz |
Fix bug where removing all characters from indicator at end of document did
not remove that run causing iteration over the indicator to hang.
Diffstat (limited to 'test/unit/testRunStyles.cxx')
-rw-r--r-- | test/unit/testRunStyles.cxx | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/test/unit/testRunStyles.cxx b/test/unit/testRunStyles.cxx index 5cf4b7e01..8fec25b56 100644 --- a/test/unit/testRunStyles.cxx +++ b/test/unit/testRunStyles.cxx @@ -281,3 +281,34 @@ TEST_F(RunStylesTest, DeleteAll) { EXPECT_EQ(1, prs->Runs()); } +TEST_F(RunStylesTest, DeleteSecond) { + prs->InsertSpace(0, 3); + int startFill = 1; + int lengthFill = 1; + EXPECT_EQ(true, prs->FillRange(startFill, 99, lengthFill)); + EXPECT_EQ(3, prs->Length()); + EXPECT_EQ(3, prs->Runs()); + prs->DeleteRange(1, 1); + EXPECT_EQ(2, prs->Length()); + EXPECT_EQ(1, prs->Runs()); +} + +TEST_F(RunStylesTest, DeleteEndRun) { + prs->InsertSpace(0, 2); + int startFill = 1; + int lengthFill = 1; + EXPECT_EQ(true, prs->FillRange(startFill, 99, lengthFill)); + EXPECT_EQ(2, prs->Length()); + EXPECT_EQ(2, prs->Runs()); + EXPECT_EQ(0, prs->StartRun(0)); + EXPECT_EQ(1, prs->EndRun(0)); + EXPECT_EQ(1, prs->StartRun(1)); + EXPECT_EQ(2, prs->EndRun(1)); + prs->DeleteRange(1, 1); + EXPECT_EQ(1, prs->Length()); + EXPECT_EQ(1, prs->Runs()); + EXPECT_EQ(0, prs->StartRun(0)); + EXPECT_EQ(1, prs->EndRun(0)); + EXPECT_EQ(0, prs->StartRun(1)); + EXPECT_EQ(1, prs->EndRun(1)); +} |