diff options
author | Marco Cecchetti <marco.cecchetti@collabora.com> | 2015-11-05 12:49:20 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-11-05 16:13:12 +0100 |
commit | 87e0c9f6d7d753fbe4ade55d7c15ee07b1118c56 (patch) | |
tree | da2a2958917c2b962d1d55ea3eda3b45528cde5a /sd | |
parent | d54aaea33bf2dab86c0ead4bd142c593d017f930 (diff) |
sd: add support for svg export unit tests
Change-Id: Iafeaecad612b724c4eeb85e0c01c942afb6445d8
Diffstat (limited to 'sd')
-rw-r--r-- | sd/CppunitTest_sd_svg_export_tests.mk | 76 | ||||
-rw-r--r-- | sd/Module_sd.mk | 1 | ||||
-rw-r--r-- | sd/qa/unit/SVGExportTests.cxx | 72 | ||||
-rw-r--r-- | sd/qa/unit/data/odp/svg-export-text-decorations.odp | bin | 0 -> 12407 bytes |
4 files changed, 149 insertions, 0 deletions
diff --git a/sd/CppunitTest_sd_svg_export_tests.mk b/sd/CppunitTest_sd_svg_export_tests.mk new file mode 100644 index 000000000000..36f64ea6f8a1 --- /dev/null +++ b/sd/CppunitTest_sd_svg_export_tests.mk @@ -0,0 +1,76 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +#************************************************************************* +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# +#************************************************************************* + +$(eval $(call gb_CppunitTest_CppunitTest,sd_svg_export_tests)) + +$(eval $(call gb_CppunitTest_use_externals,sd_svg_export_tests,\ + boost_headers \ + libxml2 \ +)) + +$(eval $(call gb_CppunitTest_add_exception_objects,sd_svg_export_tests, \ + sd/qa/unit/SVGExportTests \ +)) + +$(eval $(call gb_CppunitTest_use_libraries,sd_svg_export_tests, \ + basegfx \ + comphelper \ + cppu \ + cppuhelper \ + drawinglayer \ + editeng \ + for \ + forui \ + i18nlangtag \ + msfilter \ + oox \ + sal \ + salhelper \ + sax \ + sd \ + sfx \ + sot \ + svl \ + svt \ + svx \ + svxcore \ + test \ + tl \ + tk \ + ucbhelper \ + unotest \ + utl \ + vcl \ + xo \ + $(gb_UWINAPI) \ +)) + +$(eval $(call gb_CppunitTest_set_include,sd_svg_export_tests,\ + -I$(SRCDIR)/sd/source/ui/inc \ + -I$(SRCDIR)/sd/inc \ + $$(INCLUDE) \ +)) + +$(eval $(call gb_CppunitTest_use_api,sd_svg_export_tests,\ + offapi \ + udkapi \ +)) + +$(eval $(call gb_CppunitTest_use_ure,sd_svg_export_tests)) +$(eval $(call gb_CppunitTest_use_vcl,sd_svg_export_tests)) + +$(eval $(call gb_CppunitTest_use_rdb,sd_svg_export_tests,services)) + +$(eval $(call gb_CppunitTest_use_configuration,sd_svg_export_tests)) + +$(call gb_CppunitTest_get_target,sd_svg_export_tests) : $(call gb_AllLangResTarget_get_target,sd) + +# vim: set noet sw=4 ts=4: diff --git a/sd/Module_sd.mk b/sd/Module_sd.mk index 4bd26acb6feb..c62ea2078bfe 100644 --- a/sd/Module_sd.mk +++ b/sd/Module_sd.mk @@ -34,6 +34,7 @@ $(eval $(call gb_Module_add_check_targets,sd,\ CppunitTest_sd_filters_test \ CppunitTest_sd_html_export_tests \ CppunitTest_sd_tiledrendering \ + CppunitTest_sd_svg_export_tests \ )) endif diff --git a/sd/qa/unit/SVGExportTests.cxx b/sd/qa/unit/SVGExportTests.cxx new file mode 100644 index 000000000000..8dbbbc9cb66e --- /dev/null +++ b/sd/qa/unit/SVGExportTests.cxx @@ -0,0 +1,72 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#include "sdmodeltestbase.hxx" + +#include <test/xmltesttools.hxx> +#include <unotools/mediadescriptor.hxx> +#include <com/sun/star/frame/XStorable.hpp> +#include <com/sun/star/frame/Desktop.hpp> +#include <comphelper/processfactory.hxx> +#include <com/sun/star/packages/zip/ZipFileAccess.hpp> + +using namespace css; + +class SdSVGFilterTest : public SdModelTestBase, public XmlTestTools +{ + uno::Reference<lang::XComponent> mxComponent; + utl::TempFile maTempFile; + +public: + SdSVGFilterTest() + { + maTempFile.EnableKillingFile(); + } + + virtual void setUp() override + { + SdModelTestBase::setUp(); + + mxDesktop.set(css::frame::Desktop::create(comphelper::getComponentContext(getMultiServiceFactory()))); + } + + virtual void tearDown() override + { + if (mxComponent.is()) + mxComponent->dispose(); + + SdModelTestBase::tearDown(); + } + + void testSVGExportTextDecorations() + { + mxComponent = loadFromDesktop(getURLFromSrc("/sd/qa/unit/data/odp/svg-export-text-decorations.odp")); + CPPUNIT_ASSERT(mxComponent.is()); + + uno::Reference<frame::XStorable> xStorable(mxComponent, uno::UNO_QUERY); + utl::MediaDescriptor aMediaDescriptor; + OUString aFilterName("impress_svg_Export"); + aMediaDescriptor["FilterName"] <<= aFilterName; + xStorable->storeToURL(maTempFile.GetURL(), aMediaDescriptor.getAsConstPropertyValueList()); + xmlDocPtr pXmlDoc = parseXml(maTempFile); + CPPUNIT_ASSERT(pXmlDoc); + + // TODO use assertXPath() here. + } + + CPPUNIT_TEST_SUITE(SdSVGFilterTest); + CPPUNIT_TEST(testSVGExportTextDecorations); + CPPUNIT_TEST_SUITE_END(); +}; + +CPPUNIT_TEST_SUITE_REGISTRATION(SdSVGFilterTest); + +CPPUNIT_PLUGIN_IMPLEMENT(); + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sd/qa/unit/data/odp/svg-export-text-decorations.odp b/sd/qa/unit/data/odp/svg-export-text-decorations.odp Binary files differnew file mode 100644 index 000000000000..d51661716fc7 --- /dev/null +++ b/sd/qa/unit/data/odp/svg-export-text-decorations.odp |