diff options
author | Jens Carl <j.carl43@gmx.de> | 2018-12-18 19:14:13 +0000 |
---|---|---|
committer | Jens Carl <j.carl43@gmx.de> | 2018-12-18 23:55:18 +0100 |
commit | 2b9739b9b009de93efa4f24995469c3bb9d82261 (patch) | |
tree | f78e491134408c1ad627447d18a79a8fd46b9eab | |
parent | 6aaae44da382f4bc3eafc287b4a21734b740cf21 (diff) |
Add XServiceInfo tests to ScScenariosObj
Change-Id: I4d8fb95af78330d488e4b782eb8cdff5b83f1cc2
Reviewed-on: https://gerrit.libreoffice.org/65369
Tested-by: Jenkins
Reviewed-by: Jens Carl <j.carl43@gmx.de>
-rw-r--r-- | include/test/lang/xserviceinfo.hxx | 49 | ||||
-rw-r--r-- | sc/qa/extras/scscenariosobj.cxx | 10 | ||||
-rw-r--r-- | test/Library_subsequenttest.mk | 1 | ||||
-rw-r--r-- | test/source/lang/xserviceinfo.cxx | 49 |
4 files changed, 108 insertions, 1 deletions
diff --git a/include/test/lang/xserviceinfo.hxx b/include/test/lang/xserviceinfo.hxx new file mode 100644 index 000000000000..498e5ed8387f --- /dev/null +++ b/include/test/lang/xserviceinfo.hxx @@ -0,0 +1,49 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */ +/* + * 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/. + */ + +#ifndef INCLUDED_TEST_LANG_XSERVICEINFO_HXX +#define INCLUDED_TEST_LANG_XSERVICEINFO_HXX + +#include <com/sun/star/uno/XInterface.hpp> + +#include <com/sun/star/uno/Reference.hxx> + +#include <rtl/string.hxx> +#include <test/testdllapi.hxx> + +namespace apitest +{ +class OOO_DLLPUBLIC_TEST XServiceInfo +{ +public: + XServiceInfo(const OUString& rImplName, const OUString& rServiceName) + : m_aImplName(rImplName) + , m_aServiceName(rServiceName) + { + } + + virtual css::uno::Reference<css::uno::XInterface> init() = 0; + + void testGetImplementationName(); + void testGetSupportedServiceNames(); + void testSupportsService(); + +protected: + ~XServiceInfo() {} + +private: + OUString const m_aImplName; + OUString const m_aServiceName; +}; + +} // namespace apitest + +#endif // INCLUDED_TEST_LANG_XSERVICEINFO_HXX + +/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ diff --git a/sc/qa/extras/scscenariosobj.cxx b/sc/qa/extras/scscenariosobj.cxx index 22f35f10cb52..a379cf249ece 100644 --- a/sc/qa/extras/scscenariosobj.cxx +++ b/sc/qa/extras/scscenariosobj.cxx @@ -12,6 +12,7 @@ #include <test/container/xenumerationaccess.hxx> #include <test/container/xnameaccess.hxx> #include <test/container/xindexaccess.hxx> +#include <test/lang/xserviceinfo.hxx> #include <test/sheet/xscenarios.hxx> #include <com/sun/star/container/XIndexAccess.hpp> @@ -43,7 +44,8 @@ class ScScenariosObj : public CalcUnoApiTest, public apitest::XEnumerationAccess, public apitest::XNameAccess, public apitest::XIndexAccess, - public apitest::XScenarios + public apitest::XScenarios, + public apitest::XServiceInfo { public: ScScenariosObj(); @@ -74,6 +76,11 @@ public: CPPUNIT_TEST(testAddNewByName); CPPUNIT_TEST(testRemoveByName); + // XServiceInfo + CPPUNIT_TEST(testGetImplementationName); + CPPUNIT_TEST(testGetSupportedServiceNames); + CPPUNIT_TEST(testSupportsService); + CPPUNIT_TEST_SUITE_END(); private: @@ -85,6 +92,7 @@ ScScenariosObj::ScScenariosObj() , XElementAccess(cppu::UnoType<sheet::XScenario>::get()) , XNameAccess("ScScenarios") , XIndexAccess(1) + , XServiceInfo("ScScenariosObj", "com.sun.star.sheet.Scenarios") { } diff --git a/test/Library_subsequenttest.mk b/test/Library_subsequenttest.mk index 1ce96cbd84ae..88edfeed9741 100644 --- a/test/Library_subsequenttest.mk +++ b/test/Library_subsequenttest.mk @@ -53,6 +53,7 @@ $(eval $(call gb_Library_add_exception_objects,subsequenttest,\ test/source/container/xnamereplace \ test/source/drawing/captionshape \ test/source/document/xlinktargetsupplier \ + test/source/lang/xserviceinfo \ test/source/sheet/cellarealink \ test/source/sheet/cellproperties \ test/source/sheet/databaseimportdescriptor \ diff --git a/test/source/lang/xserviceinfo.cxx b/test/source/lang/xserviceinfo.cxx new file mode 100644 index 000000000000..eeba62784b14 --- /dev/null +++ b/test/source/lang/xserviceinfo.cxx @@ -0,0 +1,49 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */ +/* + * 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 <test/lang/xserviceinfo.hxx> +#include <rtl/string.hxx> + +#include <com/sun/star/lang/XServiceInfo.hpp> + +#include <com/sun/star/uno/Reference.hxx> +#include <com/sun/star/uno/Sequence.hxx> + +#include <cppunit/extensions/HelperMacros.h> + +using namespace css; +using namespace css::uno; + +namespace apitest +{ +void XServiceInfo::testGetImplementationName() +{ + uno::Reference<lang::XServiceInfo> xSI(init(), uno::UNO_QUERY_THROW); + + CPPUNIT_ASSERT_EQUAL(m_aImplName, xSI->getImplementationName()); +} + +void XServiceInfo::testGetSupportedServiceNames() +{ + uno::Reference<lang::XServiceInfo> xSI(init(), uno::UNO_QUERY_THROW); + + uno::Sequence<OUString> aServiceNames = xSI->getSupportedServiceNames(); + CPPUNIT_ASSERT(aServiceNames.getLength()); +} + +void XServiceInfo::testSupportsService() +{ + uno::Reference<lang::XServiceInfo> xSI(init(), uno::UNO_QUERY_THROW); + + CPPUNIT_ASSERT(xSI->supportsService(m_aServiceName)); +} + +} // namespace apitest + +/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ |