diff options
author | Miklos Vajna <vmiklos@suse.cz> | 2013-01-14 15:23:49 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@suse.cz> | 2013-01-14 15:38:13 +0100 |
commit | bf670bcd5e60eae95a6bd297391799f13e55db9d (patch) | |
tree | 201dcfd3986fa891280e72a0231f33b8a2dfc4ac | |
parent | b1859c3a6d32dff66550c33831df241035d91aa9 (diff) |
fdo#57938 testcase
Change-Id: I5a219011952f37861b0688e17afca1b3b07fdc31
-rw-r--r-- | sw/qa/core/swdoc-test.cxx | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/sw/qa/core/swdoc-test.cxx b/sw/qa/core/swdoc-test.cxx index de9828e84bfb..f2cc9ccde8ea 100644 --- a/sw/qa/core/swdoc-test.cxx +++ b/sw/qa/core/swdoc-test.cxx @@ -45,6 +45,8 @@ #include <sfx2/docfile.hxx> #include <sfx2/sfxmodelfactory.hxx> +#include <xmloff/odffields.hxx> + #include "breakit.hxx" #include "doc.hxx" #include "docsh.hxx" @@ -88,6 +90,7 @@ public: void testSwScanner(); void testUserPerceivedCharCount(); void testGraphicAnchorDeletion(); + void testFdo57938(); CPPUNIT_TEST_SUITE(SwDocTest); CPPUNIT_TEST(randomTest); @@ -98,6 +101,7 @@ public: CPPUNIT_TEST(testSwScanner); CPPUNIT_TEST(testUserPerceivedCharCount); CPPUNIT_TEST(testGraphicAnchorDeletion); + CPPUNIT_TEST(testFdo57938); CPPUNIT_TEST_SUITE_END(); private: @@ -874,6 +878,24 @@ void SwDocTest::randomTest() } } +void SwDocTest::testFdo57938() +{ + SwNodeIndex aIdx(m_pDoc->GetNodes().GetEndOfContent(), -1); + SwPaM aPaM(aIdx); + + // Insert "atest" and create a fieldmark around "test". + OUString aTest("atest"); + m_pDoc->InsertString(aPaM, aTest); + aPaM.SetMark(); + aPaM.GetPoint()->nContent = 1; + IDocumentMarkAccess* pMarksAccess = m_pDoc->getIDocumentMarkAccess(); + pMarksAccess->makeFieldBookmark(aPaM, "", ODF_COMMENTRANGE); + aPaM.GetPoint()->nContent = 0; + aPaM.GetMark()->nContent = 1; + // The problem was that "a" was considered read-only, so could not be deleted. + CPPUNIT_ASSERT_EQUAL(false, bool(aPaM.HasReadonlySel(false))); +} + void SwDocTest::setUp() { BootstrapFixture::setUp(); |