From eac3e6e746300df379226941ba75c4e0ce1feb7a Mon Sep 17 00:00:00 2001 From: Miklos Vajna Date: Wed, 14 Nov 2012 19:03:05 +0100 Subject: n#789482 DOCX: export track change data after w:hyperlink Change-Id: If204523d7da544b11b2d809993ada180476104ef --- sw/qa/extras/ooxmlexport/data/n789482.docx | Bin 0 -> 12916 bytes sw/qa/extras/ooxmlexport/ooxmlexport.cxx | 20 ++++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100755 sw/qa/extras/ooxmlexport/data/n789482.docx (limited to 'sw/qa/extras/ooxmlexport') diff --git a/sw/qa/extras/ooxmlexport/data/n789482.docx b/sw/qa/extras/ooxmlexport/data/n789482.docx new file mode 100755 index 000000000000..493e8ee04b11 Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/n789482.docx differ diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx index 1a1c15791b16..8fe19859258f 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx @@ -66,6 +66,7 @@ public: void testFdo47669(); void testTableBorders(); void testFdo51550(); + void testN789482(); CPPUNIT_TEST_SUITE(Test); #if !defined(MACOSX) && !defined(WNT) @@ -103,6 +104,7 @@ void Test::run() {"fdo47669.docx", &Test::testFdo47669}, {"table-borders.docx", &Test::testTableBorders}, {"fdo51550.odt", &Test::testFdo51550}, + {"n789482.docx", &Test::testN789482}, }; // Don't test the first import of these, for some reason those tests fail const char* aBlacklist[] = { @@ -482,6 +484,24 @@ void Test::testFdo51550() CPPUNIT_ASSERT_EQUAL(sal_Int32(1), xDraws->getCount()); } +void Test::testN789482() +{ + // The problem was that w:del was exported before w:hyperlink, resulting in an invalid XML. + uno::Reference xParagraph = getParagraph(1); + getRun(xParagraph, 1, "Before. "); + + CPPUNIT_ASSERT_EQUAL(OUString("Delete"), getProperty(getRun(xParagraph, 2), "RedlineType")); + CPPUNIT_ASSERT_EQUAL(sal_True, getProperty(getRun(xParagraph, 2), "IsStart")); + + getRun(xParagraph, 3, "www.test.com"); + CPPUNIT_ASSERT_EQUAL(OUString("http://www.test.com/"), getProperty(getRun(xParagraph, 3), "HyperLinkURL")); + + CPPUNIT_ASSERT_EQUAL(OUString("Delete"), getProperty(getRun(xParagraph, 4), "RedlineType")); + CPPUNIT_ASSERT_EQUAL(sal_False, getProperty(getRun(xParagraph, 4), "IsStart")); + + getRun(xParagraph, 5, " After."); +} + CPPUNIT_TEST_SUITE_REGISTRATION(Test); CPPUNIT_PLUGIN_IMPLEMENT(); -- cgit v1.2.3