From 4de42d02f865464057ca5681c67f63fece355173 Mon Sep 17 00:00:00 2001 From: Stephan Bergmann Date: Tue, 6 Nov 2012 16:13:57 +0100 Subject: Add some rtl::Bootstrap unit test ...there is still additional old cruft in sal/qa/rtl/bootstrap/, some of it might be worthwhile to resurrect. Change-Id: Ie334431abc8de839fa2e655cbd3dc4d014c38f15 --- sal/CppunitTest_sal_rtl_bootstrap.mk | 21 +++++++++++++ sal/Module_sal.mk | 1 + sal/qa/rtl/bootstrap/expand.cxx | 60 ++++++++++++++++++++++++++++++++++++ 3 files changed, 82 insertions(+) create mode 100644 sal/CppunitTest_sal_rtl_bootstrap.mk create mode 100644 sal/qa/rtl/bootstrap/expand.cxx (limited to 'sal') diff --git a/sal/CppunitTest_sal_rtl_bootstrap.mk b/sal/CppunitTest_sal_rtl_bootstrap.mk new file mode 100644 index 000000000000..f5771ea02b66 --- /dev/null +++ b/sal/CppunitTest_sal_rtl_bootstrap.mk @@ -0,0 +1,21 @@ +# -*- 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,sal_rtl_bootstrap)) + +$(eval $(call gb_CppunitTest_add_exception_objects,sal_rtl_bootstrap, \ + sal/qa/rtl/bootstrap/expand \ +)) + +$(eval $(call gb_CppunitTest_use_libraries,sal_rtl_bootstrap, \ + sal \ + $(gb_UWINAPI) \ +)) + +# vim: set noet sw=4 ts=4: diff --git a/sal/Module_sal.mk b/sal/Module_sal.mk index a2c937d719c5..8bb3c73f3130 100644 --- a/sal/Module_sal.mk +++ b/sal/Module_sal.mk @@ -63,6 +63,7 @@ $(eval $(call gb_Module_add_check_targets,sal,\ CppunitTest_sal_osl_security \ CppunitTest_sal_osl_thread \ CppunitTest_sal_rtl_alloc \ + CppunitTest_sal_rtl_bootstrap \ CppunitTest_sal_rtl_cipher \ CppunitTest_sal_rtl_crc32 \ CppunitTest_sal_rtl_doublelock \ diff --git a/sal/qa/rtl/bootstrap/expand.cxx b/sal/qa/rtl/bootstrap/expand.cxx new file mode 100644 index 000000000000..9aad9ddbcde6 --- /dev/null +++ b/sal/qa/rtl/bootstrap/expand.cxx @@ -0,0 +1,60 @@ +/* -*- 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 "sal/config.h" + +#include "cppunit/TestAssert.h" +#include "cppunit/TestFixture.h" +#include "cppunit/extensions/HelperMacros.h" +#include "cppunit/plugin/TestPlugIn.h" +#include "rtl/bootstrap.hxx" +#include "rtl/ustring.hxx" + +namespace { + +class Test: public CppUnit::TestFixture { +public: + virtual void setUp(); + +private: + CPPUNIT_TEST_SUITE(Test); + CPPUNIT_TEST(testDollar); + CPPUNIT_TEST(testIndirectDollar); + CPPUNIT_TEST_SUITE_END(); + + void testDollar(); + + void testIndirectDollar(); +}; + +void Test::setUp() { + rtl::Bootstrap::set("TEST", ""); + rtl::Bootstrap::set("WITH_DOLLAR", "foo\\$TEST"); + rtl::Bootstrap::set("INDIRECT", "$WITH_DOLLAR"); +} + +void Test::testDollar() { + rtl::OUString s("$WITH_DOLLAR"); + rtl::Bootstrap::expandMacros(s); + CPPUNIT_ASSERT_EQUAL(rtl::OUString("foo$TEST"), s); +} + +void Test::testIndirectDollar() { + rtl::OUString s("$INDIRECT"); + rtl::Bootstrap::expandMacros(s); + CPPUNIT_ASSERT_EQUAL(rtl::OUString("foo$TEST"), s); +} + +CPPUNIT_TEST_SUITE_REGISTRATION(Test); + +} + +CPPUNIT_PLUGIN_IMPLEMENT(); + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit