summaryrefslogtreecommitdiff
path: root/sw/qa/extras/mailmerge
diff options
context:
space:
mode:
authorLuboš Luňák <l.lunak@collabora.com>2014-10-03 18:21:08 +0200
committerLuboš Luňák <l.lunak@collabora.com>2014-10-03 18:28:11 +0200
commitf4825097a98c681cc187d88cfc1f8fd82362e1e0 (patch)
tree3b4c1f698e4f46af68cab43c16cfb0c781ccf8cd /sw/qa/extras/mailmerge
parent47db7c5d61f96ce90aebf560c29fcb999567e75f (diff)
copy default drawinglayer attributes when doing mailmerge
Change-Id: I4c6fc31ae72d179975c65aec0b560741474d433e
Diffstat (limited to 'sw/qa/extras/mailmerge')
-rw-r--r--sw/qa/extras/mailmerge/data/missing-default-line-color.ottbin0 -> 15093 bytes
-rw-r--r--sw/qa/extras/mailmerge/data/one-empty-address.odsbin0 -> 8013 bytes
-rw-r--r--sw/qa/extras/mailmerge/mailmerge.cxx23
3 files changed, 23 insertions, 0 deletions
diff --git a/sw/qa/extras/mailmerge/data/missing-default-line-color.ott b/sw/qa/extras/mailmerge/data/missing-default-line-color.ott
new file mode 100644
index 000000000000..dad5a7bed989
--- /dev/null
+++ b/sw/qa/extras/mailmerge/data/missing-default-line-color.ott
Binary files differ
diff --git a/sw/qa/extras/mailmerge/data/one-empty-address.ods b/sw/qa/extras/mailmerge/data/one-empty-address.ods
new file mode 100644
index 000000000000..abffed956aee
--- /dev/null
+++ b/sw/qa/extras/mailmerge/data/one-empty-address.ods
Binary files differ
diff --git a/sw/qa/extras/mailmerge/mailmerge.cxx b/sw/qa/extras/mailmerge/mailmerge.cxx
index 1b8dc2e4ec57..33f8f43bb620 100644
--- a/sw/qa/extras/mailmerge/mailmerge.cxx
+++ b/sw/qa/extras/mailmerge/mailmerge.cxx
@@ -71,6 +71,29 @@ DECLARE_DFLT_MAILMERGE_TEST(testMultiPageAnchoredDraws, "multiple-page-anchored-
}
}
+DECLARE_DFLT_MAILMERGE_TEST(testMissingDefaultLineColor, "missing-default-line-color.ott", "one-empty-address.ods", "one-empty-address")
+{
+ executeMailMerge();
+ // The document was created by LO version which didn't write out the default value for line color
+ // (see XMLGraphicsDefaultStyle::SetDefaults()).
+ uno::Reference<drawing::XDrawPageSupplier> xDrawPageSupplier(mxMMComponent, uno::UNO_QUERY);
+ uno::Reference<container::XIndexAccess> xDraws(xDrawPageSupplier->getDrawPage(), uno::UNO_QUERY);
+ uno::Reference<beans::XPropertySet> xPropertySet(xDraws->getByIndex(0), uno::UNO_QUERY);
+ // Lines do not have a line color.
+ CPPUNIT_ASSERT( !xPropertySet->getPropertySetInfo()->hasPropertyByName( "LineColor" ));
+ SwXTextDocument* pTxtDoc = dynamic_cast<SwXTextDocument *>(mxMMComponent.get());
+ CPPUNIT_ASSERT(pTxtDoc);
+ uno::Reference< lang::XMultiServiceFactory > xFact( mxMMComponent, uno::UNO_QUERY );
+ uno::Reference< beans::XPropertySet > xDefaults( xFact->createInstance( "com.sun.star.drawing.Defaults" ), uno::UNO_QUERY );
+ CPPUNIT_ASSERT( xDefaults.is());
+ uno::Reference< beans::XPropertySetInfo > xInfo( xDefaults->getPropertySetInfo());
+ CPPUNIT_ASSERT( xInfo->hasPropertyByName( "LineColor" ));
+ sal_uInt32 lineColor;
+ xDefaults->getPropertyValue( "LineColor" ) >>= lineColor;
+ // And the default value is black (wasn't copied properly by mailmerge).
+ CPPUNIT_ASSERT_EQUAL( COL_BLACK, lineColor );
+}
+
#endif
CPPUNIT_PLUGIN_IMPLEMENT();