diff options
author | Xisco Fauli <xiscofauli@libreoffice.org> | 2021-11-19 17:51:49 +0100 |
---|---|---|
committer | Xisco Fauli <xiscofauli@libreoffice.org> | 2021-11-20 12:13:13 +0100 |
commit | 653c5d2ca1cc777d3556348b65ded0eaae95a414 (patch) | |
tree | 7cb6cc0e60b2cb301ab18bea5cc6005f9beb307e /sw/qa | |
parent | 9f3271297e7ce980fdb09a063ce51435314066f6 (diff) |
tdf#121546: sw_uiwriter3: Add unittest
Change-Id: I10d1d9a06c04e810b90da9184d5a52f278015fee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125566
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Diffstat (limited to 'sw/qa')
-rw-r--r-- | sw/qa/extras/uiwriter/data/tdf121546.odt | bin | 0 -> 10044 bytes | |||
-rw-r--r-- | sw/qa/extras/uiwriter/uiwriter3.cxx | 47 |
2 files changed, 47 insertions, 0 deletions
diff --git a/sw/qa/extras/uiwriter/data/tdf121546.odt b/sw/qa/extras/uiwriter/data/tdf121546.odt Binary files differnew file mode 100644 index 000000000000..6b8b78f69ee3 --- /dev/null +++ b/sw/qa/extras/uiwriter/data/tdf121546.odt diff --git a/sw/qa/extras/uiwriter/uiwriter3.cxx b/sw/qa/extras/uiwriter/uiwriter3.cxx index c86fb182c07e..72d3bfeb45c4 100644 --- a/sw/qa/extras/uiwriter/uiwriter3.cxx +++ b/sw/qa/extras/uiwriter/uiwriter3.cxx @@ -2137,6 +2137,53 @@ CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, TestTextBoxCrashAfterLineDel) xCursor->setString(OUString()); } +CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf121546) +{ + createSwDoc(DATA_DIRECTORY, "tdf121546.odt"); + + CPPUNIT_ASSERT_EQUAL(OUString("xxxxxxxxxxxxxxxxxxxx"), getParagraph(2)->getString()); + + dispatchCommand(mxComponent, ".uno:SelectAll", {}); + Scheduler::ProcessEventsToIdle(); + + dispatchCommand(mxComponent, ".uno:Cut", {}); + Scheduler::ProcessEventsToIdle(); + + CPPUNIT_ASSERT_EQUAL(1, getParagraphs()); + + // Create a new document + createSwDoc(); + + dispatchCommand(mxComponent, ".uno:Paste", {}); + Scheduler::ProcessEventsToIdle(); + + CPPUNIT_ASSERT_EQUAL(OUString("xxxxxxxxxxxxxxxxxxxx"), getParagraph(2)->getString()); + + dispatchCommand(mxComponent, ".uno:SelectAll", {}); + Scheduler::ProcessEventsToIdle(); + + dispatchCommand(mxComponent, ".uno:Cut", {}); + Scheduler::ProcessEventsToIdle(); + + CPPUNIT_ASSERT_EQUAL(1, getParagraphs()); + + dispatchCommand(mxComponent, ".uno:Undo", {}); + Scheduler::ProcessEventsToIdle(); + + CPPUNIT_ASSERT_EQUAL(OUString("xxxxxxxxxxxxxxxxxxxx"), getParagraph(2)->getString()); + + dispatchCommand(mxComponent, ".uno:Undo", {}); + Scheduler::ProcessEventsToIdle(); + + SwXTextDocument* pTextDoc = dynamic_cast<SwXTextDocument*>(mxComponent.get()); + + // Without the fix in place, this test would have crashed here + pTextDoc->postKeyEvent(LOK_KEYEVENT_KEYINPUT, 0, KEY_RETURN); + Scheduler::ProcessEventsToIdle(); + + CPPUNIT_ASSERT_EQUAL(2, getParagraphs()); +} + CPPUNIT_TEST_FIXTURE(SwUiWriterTest3, testTdf134626) { SwDoc* pDoc = createSwDoc(DATA_DIRECTORY, "tdf134626.odt"); |