sd: add support for svg export unit tests

Change-Id: Iafeaecad612b724c4eeb85e0c01c942afb6445d8
This commit is contained in:
Marco Cecchetti 2015-11-05 12:49:20 +01:00 committed by Miklos Vajna
parent d54aaea33b
commit 87e0c9f6d7
4 changed files with 149 additions and 0 deletions

View file

@ -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:

View file

@ -34,6 +34,7 @@ $(eval $(call gb_Module_add_check_targets,sd,\
CppunitTest_sd_filters_test \ CppunitTest_sd_filters_test \
CppunitTest_sd_html_export_tests \ CppunitTest_sd_html_export_tests \
CppunitTest_sd_tiledrendering \ CppunitTest_sd_tiledrendering \
CppunitTest_sd_svg_export_tests \
)) ))
endif endif

View file

@ -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: */

Binary file not shown.