diff --git a/sw/CppunitTest_sw_subsequent_ww8export.mk b/sw/CppunitTest_sw_subsequent_ww8export.mk index 8c051e354f0e..e01da9b1dad1 100644 --- a/sw/CppunitTest_sw_subsequent_ww8export.mk +++ b/sw/CppunitTest_sw_subsequent_ww8export.mk @@ -85,6 +85,7 @@ $(eval $(call gb_CppunitTest_use_components,sw_subsequent_ww8export,\ i18npool/util/i18npool \ package/source/xstor/xstor \ package/util/package2 \ + sax/source/expatwrap/expwrap \ sw/util/msword \ sw/util/sw \ sw/util/swd \ diff --git a/sw/qa/extras/ww8export/data/fdo45724.odt b/sw/qa/extras/ww8export/data/fdo45724.odt new file mode 100644 index 000000000000..45c6d9a58a9f Binary files /dev/null and b/sw/qa/extras/ww8export/data/fdo45724.odt differ diff --git a/sw/qa/extras/ww8export/ww8export.cxx b/sw/qa/extras/ww8export/ww8export.cxx index 4bf4a574df98..58692a65f925 100644 --- a/sw/qa/extras/ww8export/ww8export.cxx +++ b/sw/qa/extras/ww8export/ww8export.cxx @@ -27,7 +27,9 @@ #include "../swmodeltestbase.hxx" +#include #include +#include #include #include @@ -39,10 +41,12 @@ class Test : public SwModelTestBase { public: void testN325936(); + void testFdo45724(); CPPUNIT_TEST_SUITE(Test); #if !defined(MACOSX) && !defined(WNT) CPPUNIT_TEST(testN325936); + CPPUNIT_TEST(testFdo45724); #endif CPPUNIT_TEST_SUITE_END(); @@ -80,6 +84,17 @@ void Test::testN325936() CPPUNIT_ASSERT_EQUAL(sal_Int32(100), nValue); } +void Test::testFdo45724() +{ + roundtrip("fdo45724.odt"); + uno::Reference xDrawPageSupplier(mxComponent, uno::UNO_QUERY); + uno::Reference xDraws(xDrawPageSupplier->getDrawPage(), uno::UNO_QUERY); + uno::Reference xControlShape(xDraws->getByIndex(0), uno::UNO_QUERY); + uno::Reference xComponent(xControlShape->getControl(), uno::UNO_QUERY); + CPPUNIT_ASSERT_EQUAL(COL_WHITE, getProperty(xComponent, "BackgroundColor")); + CPPUNIT_ASSERT_EQUAL(OUString("xxx"), xComponent->getCurrentValue().get()); +} + CPPUNIT_TEST_SUITE_REGISTRATION(Test); CPPUNIT_PLUGIN_IMPLEMENT();