diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2016-06-16 09:13:04 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2016-06-16 08:32:20 +0000 |
commit | 63965d7dc571c7dce999980737f9d57a7c5151da (patch) | |
tree | e851a749f6604e8835486f77cb9f4798cd59711b /sw/qa | |
parent | b0a9ba98ba83154680f8aea0fd0e58b85e2cfb04 (diff) |
tdf#91684 RTF import: handle fFlipH and fFlipV shape props
Change-Id: I930f99647de00c2e43ef94b1ac0320daa440eae9
Reviewed-on: https://gerrit.libreoffice.org/26349
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
Diffstat (limited to 'sw/qa')
-rw-r--r-- | sw/qa/extras/rtfimport/data/flip.rtf | 96 | ||||
-rw-r--r-- | sw/qa/extras/rtfimport/rtfimport.cxx | 20 |
2 files changed, 116 insertions, 0 deletions
diff --git a/sw/qa/extras/rtfimport/data/flip.rtf b/sw/qa/extras/rtfimport/data/flip.rtf new file mode 100644 index 000000000000..84e9c2cdac5b --- /dev/null +++ b/sw/qa/extras/rtfimport/data/flip.rtf @@ -0,0 +1,96 @@ +{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff31507\deff0\stshfdbch31506\stshfloch31506\stshfhich31506\stshfbi31507\deflang1033\deflangfe1033\themelang1033\themelangfe0\themelangcs0 +\pard\plain \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 +\f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 +{\rtlch\fcs1 \af31507 \ltrch\fcs0 \lang1024\langfe1024\noproof\insrsid12721412 +{\shp +{\*\shpinst\shpleft537\shptop201\shpright2361\shpbottom1136\shpfhdr0\shpbxcolumn\shpbxignore\shpbypara\shpbyignore\shpwr3\shpwrk0\shpfblwtxt0\shpz0\shplid1026 +{\sp +{\sn shapeType} +{\sv 6} +} +{\sp +{\sn fFlipH} +{\sv 1} +} +{\sp +{\sn fFlipV} +{\sv 1} +} +{\sp +{\sn wzName} +{\sv h-and-v} +} +} +{\shprslt +} +} +{\shp +{\*\shpinst\shpleft537\shptop1201\shpright2361\shpbottom2136\shpfhdr0\shpbxcolumn\shpbxignore\shpbypara\shpbyignore\shpwr3\shpwrk0\shpfblwtxt0\shpz0\shplid1026 +{\sp +{\sn shapeType} +{\sv 6} +} +{\sp +{\sn fFlipH} +{\sv 1} +} +{\sp +{\sn fFlipV} +{\sv 0} +} +{\sp +{\sn wzName} +{\sv h-only} +} +} +{\shprslt +} +} +{\shp +{\*\shpinst\shpleft537\shptop2201\shpright2361\shpbottom3136\shpfhdr0\shpbxcolumn\shpbxignore\shpbypara\shpbyignore\shpwr3\shpwrk0\shpfblwtxt0\shpz0\shplid1026 +{\sp +{\sn shapeType} +{\sv 6} +} +{\sp +{\sn fFlipH} +{\sv 0} +} +{\sp +{\sn fFlipV} +{\sv 1} +} +{\sp +{\sn wzName} +{\sv v-only} +} +} +{\shprslt +} +} +{\shp +{\*\shpinst\shpleft537\shptop3201\shpright2361\shpbottom4136\shpfhdr0\shpbxcolumn\shpbxignore\shpbypara\shpbyignore\shpwr3\shpwrk0\shpfblwtxt0\shpz0\shplid1026 +{\sp +{\sn shapeType} +{\sv 6} +} +{\sp +{\sn fFlipH} +{\sv 0} +} +{\sp +{\sn fFlipV} +{\sv 0} +} +{\sp +{\sn wzName} +{\sv neither-h-nor-v} +} +} +{\shprslt +} +} +} +{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid13321744 +\par } +} diff --git a/sw/qa/extras/rtfimport/rtfimport.cxx b/sw/qa/extras/rtfimport/rtfimport.cxx index 6bc62c7c4ee9..73096c8e705d 100644 --- a/sw/qa/extras/rtfimport/rtfimport.cxx +++ b/sw/qa/extras/rtfimport/rtfimport.cxx @@ -2641,6 +2641,26 @@ DECLARE_RTFIMPORT_TEST(testTdf91684, "tdf91684.rtf") CPPUNIT_ASSERT_EQUAL(static_cast<sal_Int32>(1337), getShape(1)->getSize().Height); } +DECLARE_RTFIMPORT_TEST(testFlip, "flip.rtf") +{ + comphelper::SequenceAsHashMap aMap = getProperty< uno::Sequence<beans::PropertyValue> >(getShapeByName("h-and-v"), "CustomShapeGeometry"); + // This resulted in a uno::RuntimeException, as MirroredX wasn't set at all, so could not extract void to boolean. + CPPUNIT_ASSERT_EQUAL(true, aMap["MirroredX"].get<bool>()); + CPPUNIT_ASSERT_EQUAL(true, aMap["MirroredY"].get<bool>()); + + aMap = getProperty< uno::Sequence<beans::PropertyValue> >(getShapeByName("h-only"), "CustomShapeGeometry"); + CPPUNIT_ASSERT_EQUAL(true, aMap["MirroredX"].get<bool>()); + CPPUNIT_ASSERT(!aMap["MirroredY"].hasValue()); + + aMap = getProperty< uno::Sequence<beans::PropertyValue> >(getShapeByName("v-only"), "CustomShapeGeometry"); + CPPUNIT_ASSERT(!aMap["MirroredX"].hasValue()); + CPPUNIT_ASSERT_EQUAL(true, aMap["MirroredY"].get<bool>()); + + aMap = getProperty< uno::Sequence<beans::PropertyValue> >(getShapeByName("neither-h-nor-v"), "CustomShapeGeometry"); + CPPUNIT_ASSERT(!aMap["MirroredX"].hasValue()); + CPPUNIT_ASSERT(!aMap["MirroredY"].hasValue()); +} + CPPUNIT_PLUGIN_IMPLEMENT(); /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |