| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| |
| |
| // MARKER(update_precomp.py): autogen include statement, do not remove |
| #include "precompiled_sal.hxx" |
| // autogenerated file with codegen.pl |
| |
| #include <testshl/simpleheader.hxx> |
| #include <rtl/locale.hxx> |
| #include <osl/thread.h> |
| |
| namespace rtl_locale |
| { |
| // default locale for test purpose |
| void setDefaultLocale() |
| { |
| rtl::OLocale::setDefault(rtl::OUString::createFromAscii("de"), rtl::OUString::createFromAscii("DE"), /* rtl::OUString() */ rtl::OUString::createFromAscii("hochdeutsch") ); |
| } |
| |
| class getDefault : public CppUnit::TestFixture |
| { |
| public: |
| // initialise your test code values here. |
| void setUp() |
| { |
| } |
| |
| void tearDown() |
| { |
| } |
| |
| // insert your test code here. |
| void getDefault_000() |
| { |
| // this is demonstration code |
| // CPPUNIT_ASSERT_MESSAGE("a message", 1 == 1); |
| |
| // due to the fact, we set the default locale at first, this test is no longer possible |
| // ::rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); |
| // CPPUNIT_ASSERT_MESSAGE("locale must be null", aLocale.getData() == NULL); |
| |
| } |
| |
| void getDefault_001() |
| { |
| // rtl::OLocale::setDefault(rtl::OUString::createFromAscii("de"), rtl::OUString::createFromAscii("DE"), rtl::OUString()); |
| rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); |
| CPPUNIT_ASSERT_MESSAGE("locale must not null", aLocale.getData() != NULL); |
| } |
| |
| // Change the following lines only, if you add, remove or rename |
| // member functions of the current class, |
| // because these macros are need by auto register mechanism. |
| |
| CPPUNIT_TEST_SUITE(getDefault); |
| CPPUNIT_TEST(getDefault_000); |
| CPPUNIT_TEST(getDefault_001); |
| CPPUNIT_TEST_SUITE_END(); |
| }; // class getDefault |
| |
| |
| class setDefault : public CppUnit::TestFixture |
| { |
| public: |
| // initialise your test code values here. |
| void setUp() |
| { |
| } |
| |
| void tearDown() |
| { |
| setDefaultLocale(); |
| } |
| |
| // insert your test code here. |
| void setDefault_001() |
| { |
| rtl::OLocale::setDefault(rtl::OUString::createFromAscii("en"), rtl::OUString::createFromAscii("US"), rtl::OUString()); |
| rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); |
| CPPUNIT_ASSERT_MESSAGE("locale must not null", aLocale.getData() != NULL); |
| |
| // be sure to not GPF |
| } |
| |
| // Change the following lines only, if you add, remove or rename |
| // member functions of the current class, |
| // because these macros are need by auto register mechanism. |
| |
| CPPUNIT_TEST_SUITE(setDefault); |
| CPPUNIT_TEST(setDefault_001); |
| CPPUNIT_TEST_SUITE_END(); |
| }; // class setDefault |
| |
| |
| class getLanguage : public CppUnit::TestFixture |
| { |
| public: |
| // initialise your test code values here. |
| void setUp() |
| { |
| } |
| |
| void tearDown() |
| { |
| } |
| |
| // insert your test code here. |
| void getLanguage_001() |
| { |
| rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); |
| rtl::OUString suLanguage = aLocale.getLanguage(); |
| t_print("Language: %s\n", rtl::OUStringToOString(suLanguage, osl_getThreadTextEncoding()).getStr()); |
| CPPUNIT_ASSERT_MESSAGE("locale language must be 'de'", suLanguage.equals(rtl::OUString::createFromAscii("de"))); |
| } |
| void getLanguage_002() |
| { |
| rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); |
| rtl::OUString suLanguage = rtl_locale_getLanguage(aLocale.getData()); |
| t_print("Language: %s\n", rtl::OUStringToOString(suLanguage, osl_getThreadTextEncoding()).getStr()); |
| CPPUNIT_ASSERT_MESSAGE("locale language must be 'de'", suLanguage.equals(rtl::OUString::createFromAscii("de"))); |
| } |
| |
| // Change the following lines only, if you add, remove or rename |
| // member functions of the current class, |
| // because these macros are need by auto register mechanism. |
| |
| CPPUNIT_TEST_SUITE(getLanguage); |
| CPPUNIT_TEST(getLanguage_001); |
| CPPUNIT_TEST(getLanguage_002); |
| CPPUNIT_TEST_SUITE_END(); |
| }; // class getLanguage |
| |
| |
| class getCountry : public CppUnit::TestFixture |
| { |
| public: |
| // initialise your test code values here. |
| void setUp() |
| { |
| } |
| |
| void tearDown() |
| { |
| } |
| |
| // insert your test code here. |
| void getCountry_001() |
| { |
| rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); |
| rtl::OUString suCountry = aLocale.getCountry(); |
| t_print("Country: %s\n", rtl::OUStringToOString(suCountry, osl_getThreadTextEncoding()).getStr()); |
| CPPUNIT_ASSERT_MESSAGE("locale country must be 'DE'", suCountry.equals(rtl::OUString::createFromAscii("DE"))); |
| } |
| void getCountry_002() |
| { |
| rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); |
| rtl::OUString suCountry = rtl_locale_getCountry(aLocale.getData()); |
| t_print("Country: %s\n", rtl::OUStringToOString(suCountry, osl_getThreadTextEncoding()).getStr()); |
| CPPUNIT_ASSERT_MESSAGE("locale country must be 'DE'", suCountry.equals(rtl::OUString::createFromAscii("DE"))); |
| } |
| |
| // Change the following lines only, if you add, remove or rename |
| // member functions of the current class, |
| // because these macros are need by auto register mechanism. |
| |
| CPPUNIT_TEST_SUITE(getCountry); |
| CPPUNIT_TEST(getCountry_001); |
| CPPUNIT_TEST(getCountry_002); |
| CPPUNIT_TEST_SUITE_END(); |
| }; // class getCountry |
| |
| |
| class getVariant : public CppUnit::TestFixture |
| { |
| public: |
| // initialise your test code values here. |
| void setUp() |
| { |
| } |
| |
| void tearDown() |
| { |
| } |
| |
| // insert your test code here. |
| void getVariant_001() |
| { |
| rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); |
| rtl::OUString suVariant = aLocale.getVariant(); |
| t_print("Variant: %s\n", rtl::OUStringToOString(suVariant, osl_getThreadTextEncoding()).getStr()); |
| CPPUNIT_ASSERT_MESSAGE("locale variant must be 'hochdeutsch'", suVariant.equals(rtl::OUString::createFromAscii("hochdeutsch"))); |
| } |
| void getVariant_002() |
| { |
| rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); |
| rtl::OUString suVariant = rtl_locale_getVariant(aLocale.getData()); |
| t_print("Variant: %s\n", rtl::OUStringToOString(suVariant, osl_getThreadTextEncoding()).getStr()); |
| CPPUNIT_ASSERT_MESSAGE("locale variant must be 'hochdeutsch'", suVariant.equals(rtl::OUString::createFromAscii("hochdeutsch"))); |
| } |
| |
| // Change the following lines only, if you add, remove or rename |
| // member functions of the current class, |
| // because these macros are need by auto register mechanism. |
| |
| CPPUNIT_TEST_SUITE(getVariant); |
| CPPUNIT_TEST(getVariant_001); |
| CPPUNIT_TEST(getVariant_002); |
| CPPUNIT_TEST_SUITE_END(); |
| }; // class getVariant |
| |
| |
| class hashCode : public CppUnit::TestFixture |
| { |
| public: |
| // initialise your test code values here. |
| void setUp() |
| { |
| } |
| |
| void tearDown() |
| { |
| } |
| |
| // insert your test code here. |
| void hashCode_001() |
| { |
| rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); |
| sal_Int32 nHashCode = aLocale.hashCode(); |
| t_print("Hashcode: %d\n", nHashCode); |
| CPPUNIT_ASSERT_MESSAGE("locale hashcode must be 3831", nHashCode != 0); |
| } |
| void hashCode_002() |
| { |
| rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); |
| sal_Int32 nHashCode = rtl_locale_hashCode(aLocale.getData()); |
| t_print("Hashcode: %d\n", nHashCode); |
| CPPUNIT_ASSERT_MESSAGE("locale hashcode must be 3831", nHashCode != 0); |
| } |
| |
| // Change the following lines only, if you add, remove or rename |
| // member functions of the current class, |
| // because these macros are need by auto register mechanism. |
| |
| CPPUNIT_TEST_SUITE(hashCode); |
| CPPUNIT_TEST(hashCode_001); |
| CPPUNIT_TEST(hashCode_002); |
| CPPUNIT_TEST_SUITE_END(); |
| }; // class hashCode |
| |
| |
| class equals : public CppUnit::TestFixture |
| { |
| public: |
| // initialise your test code values here. |
| void setUp() |
| { |
| } |
| |
| void tearDown() |
| { |
| } |
| |
| // insert your test code here. |
| void equals_001() |
| { |
| rtl::OLocale aLocale1 = rtl::OLocale::registerLocale(rtl::OUString::createFromAscii("en"), rtl::OUString::createFromAscii("US"), rtl::OUString()); |
| rtl::OLocale aLocale2 = rtl::OLocale::registerLocale(rtl::OUString::createFromAscii("en"), rtl::OUString::createFromAscii("US")); |
| |
| sal_Bool bLocaleAreEqual = sal_False; |
| bLocaleAreEqual = (aLocale1 == aLocale2); |
| |
| CPPUNIT_ASSERT_MESSAGE("check operator ==()", bLocaleAreEqual == sal_True); |
| } |
| |
| void equals_002() |
| { |
| rtl::OLocale aLocale1 = rtl::OLocale::registerLocale(rtl::OUString::createFromAscii("en"), rtl::OUString::createFromAscii("US"), rtl::OUString()); |
| rtl::OLocale aLocale2 = rtl::OLocale::registerLocale(rtl::OUString::createFromAscii("en"), rtl::OUString::createFromAscii("US")); |
| |
| sal_Int32 nEqual = rtl_locale_equals(aLocale1.getData(), aLocale2.getData()); |
| t_print("rtl_locale_equals() result: %d\n", nEqual); |
| CPPUNIT_ASSERT(nEqual != 0); |
| } |
| |
| // Change the following lines only, if you add, remove or rename |
| // member functions of the current class, |
| // because these macros are need by auto register mechanism. |
| |
| CPPUNIT_TEST_SUITE(equals); |
| CPPUNIT_TEST(equals_001); |
| CPPUNIT_TEST(equals_002); |
| CPPUNIT_TEST_SUITE_END(); |
| }; // class equals |
| |
| // ----------------------------------------------------------------------------- |
| CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(rtl_locale::getDefault, "rtl_locale"); |
| CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(rtl_locale::setDefault, "rtl_locale"); |
| CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(rtl_locale::getLanguage, "rtl_locale"); |
| CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(rtl_locale::getCountry, "rtl_locale"); |
| CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(rtl_locale::getVariant, "rtl_locale"); |
| CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(rtl_locale::hashCode, "rtl_locale"); |
| CPPUNIT_TEST_SUITE_NAMED_REGISTRATION(rtl_locale::equals, "rtl_locale"); |
| } // namespace rtl_locale |
| |
| |
| // ----------------------------------------------------------------------------- |
| |
| // this macro creates an empty function, which will called by the RegisterAllFunctions() |
| // to let the user the possibility to also register some functions by hand. |
| // NOADDITIONAL; |
| |
| void RegisterAdditionalFunctions(FktRegFuncPtr) |
| { |
| // start message |
| t_print("Initializing ...\n" ); |
| rtl_locale::setDefaultLocale(); |
| t_print("Initialization Done.\n" ); |
| } |