summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorMatúš Kukan <matus.kukan@collabora.com>2014-09-17 11:56:24 +0200
committerMatúš Kukan <matus.kukan@collabora.com>2014-09-17 19:08:15 +0200
commitbcf8dc3d9b9d2df6f6a67c71efc52630ff65371b (patch)
tree344d8804358b5b91433ae88d5fe1f0cdc108e08b /sw
parent3914a711060341345f15b83656457f90095f32d6 (diff)
sw: html import test: local images shouldn't be file links (bnc#580834)
Change-Id: Id35e03a3f814609e40e4beea778e66cce39054d1
Diffstat (limited to 'sw')
-rw-r--r--sw/CppunitTest_sw_htmlimport.mk56
-rw-r--r--sw/Module_sw.mk1
-rw-r--r--sw/qa/extras/htmlimport/data/picture.html23
-rw-r--r--sw/qa/extras/htmlimport/htmlimport.cxx35
4 files changed, 115 insertions, 0 deletions
diff --git a/sw/CppunitTest_sw_htmlimport.mk b/sw/CppunitTest_sw_htmlimport.mk
new file mode 100644
index 000000000000..30360763d9cc
--- /dev/null
+++ b/sw/CppunitTest_sw_htmlimport.mk
@@ -0,0 +1,56 @@
+# -*- 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,sw_htmlimport))
+
+$(eval $(call gb_CppunitTest_add_exception_objects,sw_htmlimport, \
+ sw/qa/extras/htmlimport/htmlimport \
+))
+
+$(eval $(call gb_CppunitTest_use_libraries,sw_htmlimport, \
+ comphelper \
+ cppu \
+ cppuhelper \
+ i18nlangtag \
+ sal \
+ sw \
+ test \
+ tl \
+ unotest \
+ utl \
+ vcl \
+ $(gb_UWINAPI) \
+))
+
+$(eval $(call gb_CppunitTest_use_externals,sw_htmlimport,\
+ boost_headers \
+ libxml2 \
+))
+
+$(eval $(call gb_CppunitTest_set_include,sw_htmlimport,\
+ -I$(SRCDIR)/sw/inc \
+ -I$(SRCDIR)/sw/source/core/inc \
+ -I$(SRCDIR)/sw/qa/extras/inc \
+ $$(INCLUDE) \
+))
+
+$(eval $(call gb_CppunitTest_use_sdk_api,sw_htmlimport))
+
+$(eval $(call gb_CppunitTest_use_ure,sw_htmlimport))
+$(eval $(call gb_CppunitTest_use_vcl,sw_htmlimport))
+
+$(eval $(call gb_CppunitTest_use_rdb,sw_htmlimport,services))
+
+$(eval $(call gb_CppunitTest_use_configuration,sw_htmlimport))
+
+$(eval $(call gb_CppunitTest_use_unittest_configuration,sw_htmlimport))
+
+# vim: set noet sw=4 ts=4:
diff --git a/sw/Module_sw.mk b/sw/Module_sw.mk
index 7e645c852f98..3a3d75b6b17c 100644
--- a/sw/Module_sw.mk
+++ b/sw/Module_sw.mk
@@ -53,6 +53,7 @@ $(eval $(call gb_Module_add_check_targets,sw,\
$(eval $(call gb_Module_add_slowcheck_targets,sw,\
CppunitTest_sw_uwriter \
CppunitTest_sw_htmlexport \
+ CppunitTest_sw_htmlimport \
CppunitTest_sw_macros_test \
CppunitTest_sw_ooxmlexport \
CppunitTest_sw_ooxmlexport2 \
diff --git a/sw/qa/extras/htmlimport/data/picture.html b/sw/qa/extras/htmlimport/data/picture.html
new file mode 100644
index 000000000000..c0b2e6cdb376
--- /dev/null
+++ b/sw/qa/extras/htmlimport/data/picture.html
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
+ <body>
+ <div>
+ <p>
+ This document should contain only one link. (Edit -> Links...)
+ </p>
+ <p>
+ The picture below is supposed to be fully inserted into the document, not just as a link.
+ <br/>
+ <a style="display:inline-block;" href="http://www.libreoffice.org/" title="Go to the Home of LibreOffice and the LibreOffice Community page">
+ <img src="../../../../../odk/docs/images/sdk_head-1.png" width="377" height="120px"/>
+ </a>
+ </p>
+ This one is supposed to be inserted as a link, since the source is "http://..." URL.
+ <br/>
+ <a style="display:inline-block;" href="http://www.libreoffice.org/" title="Go to the Home of LibreOffice and the LibreOffice Community page">
+ <img src="http://www.libreoffice.org/themes/libo/images/logo.png" width="218px" height="45px"/>
+ </a>
+ </p>
+ </div>
+ </body>
+</html>
diff --git a/sw/qa/extras/htmlimport/htmlimport.cxx b/sw/qa/extras/htmlimport/htmlimport.cxx
new file mode 100644
index 000000000000..86b7b86372b8
--- /dev/null
+++ b/sw/qa/extras/htmlimport/htmlimport.cxx
@@ -0,0 +1,35 @@
+/*
+ * 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 <swmodeltestbase.hxx>
+
+#include <sfx2/linkmgr.hxx>
+
+#include <docsh.hxx>
+#include <editsh.hxx>
+
+class HtmlImportTest : public SwModelTestBase
+{
+ public:
+ HtmlImportTest() : SwModelTestBase("sw/qa/extras/htmlimport/data/", "HTML (StarWriter)") {}
+};
+
+#define DECLARE_HTMLIMPORT_TEST(TestName, filename) DECLARE_SW_IMPORT_TEST(TestName, filename, HtmlImportTest)
+
+DECLARE_HTMLIMPORT_TEST(testPictureImport, "picture.html")
+{
+ SwXTextDocument* pTxtDoc = dynamic_cast<SwXTextDocument *>(mxComponent.get());
+ CPPUNIT_ASSERT(pTxtDoc);
+ // The document contains one embeded picture and one stored as a link.
+ const sfx2::LinkManager& rLinkManager = pTxtDoc->GetDocShell()->GetDoc()->GetEditShell()->GetLinkManager();
+ CPPUNIT_ASSERT_EQUAL(size_t(1), rLinkManager.GetLinks().size());
+}
+
+CPPUNIT_PLUGIN_IMPLEMENT();
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */