emfio/qa/cppunit/emf/EmfImportTest.cxx | 26 +++++++++++++++++++++++ emfio/qa/cppunit/emf/data/TestLinearGradient.emf |binary 2 files changed, 26 insertions(+)
New commits: commit 1f540cc7613cdbc0048f4013efe43886d256f86b Author: Bartosz Kosiorek <gan...@poczta.onet.pl> AuthorDate: Sun Mar 15 18:09:47 2020 +0100 Commit: Bartosz Kosiorek <gan...@poczta.onet.pl> CommitDate: Sun Mar 15 19:20:33 2020 +0100 tdf#124424 EMF+ Add tests for LinearGradient Change-Id: I85dadb067c4e77b47504dee8bb11b4c15b6ead8d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90536 Tested-by: Jenkins Reviewed-by: Bartosz Kosiorek <gan...@poczta.onet.pl> diff --git a/emfio/qa/cppunit/emf/EmfImportTest.cxx b/emfio/qa/cppunit/emf/EmfImportTest.cxx index 2601e0e69f8f..9ce4e15f4965 100644 --- a/emfio/qa/cppunit/emf/EmfImportTest.cxx +++ b/emfio/qa/cppunit/emf/EmfImportTest.cxx @@ -40,6 +40,7 @@ class Test : public test::BootstrapFixture, public XmlTestTools void TestDrawString(); void TestDrawStringTransparent(); void TestDrawLine(); + void TestLinearGradient(); Primitive2DSequence parseEmf(const OUString& aSource); @@ -49,6 +50,7 @@ public: CPPUNIT_TEST(TestDrawString); CPPUNIT_TEST(TestDrawStringTransparent); CPPUNIT_TEST(TestDrawLine); + CPPUNIT_TEST(TestLinearGradient); CPPUNIT_TEST_SUITE_END(); }; @@ -155,6 +157,30 @@ void Test::TestDrawLine() assertXPath(pDocument, "/primitive2D/metafile/transform/polypolygonstroke/line", "width", "33"); } +void Test::TestLinearGradient() +{ + // This unit checks for a correct import of an EMF+ file with LinearGradient brush + Primitive2DSequence aSequence = parseEmf("/emfio/qa/cppunit/emf/data/TestLinearGradient.emf"); + CPPUNIT_ASSERT_EQUAL(1, static_cast<int>(aSequence.getLength())); + drawinglayer::tools::Primitive2dXmlDump dumper; + xmlDocPtr pDocument = dumper.dumpAndParse(comphelper::sequenceToContainer<Primitive2DContainer>(aSequence)); + CPPUNIT_ASSERT (pDocument); + + assertXPath(pDocument, "/primitive2D/metafile/transform", "xy11", "1.0000656512605"); + assertXPath(pDocument, "/primitive2D/metafile/transform", "xy12", "0"); + assertXPath(pDocument, "/primitive2D/metafile/transform", "xy13", "0"); + assertXPath(pDocument, "/primitive2D/metafile/transform", "xy21", "0"); + assertXPath(pDocument, "/primitive2D/metafile/transform", "xy22", "1.00013140604468"); + assertXPath(pDocument, "/primitive2D/metafile/transform", "xy23", "0"); + assertXPath(pDocument, "/primitive2D/metafile/transform/mask/polypolygon", "height", "7610"); + assertXPath(pDocument, "/primitive2D/metafile/transform/mask/polypolygon", "width", "15232"); + assertXPath(pDocument, "/primitive2D/metafile/transform/mask/polypolygon", "path", "m0 0h15232v7610h-15232z"); + assertXPath(pDocument, "/primitive2D/metafile/transform/mask/svglineargradient[1]", "endx", "0"); + assertXPath(pDocument, "/primitive2D/metafile/transform/mask/svglineargradient[1]", "endy", "-1"); + assertXPath(pDocument, "/primitive2D/metafile/transform/mask/svglineargradient[2]", "endx", "0"); + assertXPath(pDocument, "/primitive2D/metafile/transform/mask/svglineargradient[2]", "endy", "-1"); +} + CPPUNIT_TEST_SUITE_REGISTRATION(Test); } diff --git a/emfio/qa/cppunit/emf/data/TestLinearGradient.emf b/emfio/qa/cppunit/emf/data/TestLinearGradient.emf new file mode 100644 index 000000000000..fb6e953dc55d Binary files /dev/null and b/emfio/qa/cppunit/emf/data/TestLinearGradient.emf differ _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits