/************************************************************** * * 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 "gtest/gtest.h" #include #include 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 ::testing::Test { public: // initialise your test code values here. void SetUp() { } void TearDown() { } }; // class getDefault TEST_F(getDefault, getDefault_000) { // this is demonstration code // ASSERT_TRUE(1 == 1) << "a message"; // due to the fact, we set the default locale at first, this test is no longer possible // ::rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); // ASSERT_TRUE(aLocale.getData() == NULL) << "locale must be null"; } TEST_F(getDefault, getDefault_001) { // rtl::OLocale::setDefault(rtl::OUString::createFromAscii("de"), rtl::OUString::createFromAscii("DE"), rtl::OUString()); rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); ASSERT_TRUE(aLocale.getData() != NULL) << "locale must not be null"; } class setDefault : public ::testing::Test { public: // initialise your test code values here. void SetUp() { } void TearDown() { setDefaultLocale(); } }; // class setDefault TEST_F(setDefault, setDefault_001) { rtl::OLocale::setDefault(rtl::OUString::createFromAscii("en"), rtl::OUString::createFromAscii("US"), rtl::OUString()); rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); ASSERT_TRUE(aLocale.getData() != NULL) << "locale must not null"; // be sure to not GPF } class getLanguage : public ::testing::Test { public: void SetUp() { } void TearDown() { } }; // class getLanguage TEST_F(getLanguage, getLanguage_001) { rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); rtl::OUString suLanguage = aLocale.getLanguage(); printf("Language: %s\n", rtl::OUStringToOString(suLanguage, osl_getThreadTextEncoding()).getStr()); ASSERT_TRUE(suLanguage.equals(rtl::OUString::createFromAscii("de"))) << "locale language must be 'de'"; } TEST_F(getLanguage, getLanguage_002) { rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); rtl::OUString suLanguage = rtl_locale_getLanguage(aLocale.getData()); printf("Language: %s\n", rtl::OUStringToOString(suLanguage, osl_getThreadTextEncoding()).getStr()); ASSERT_TRUE(suLanguage.equals(rtl::OUString::createFromAscii("de"))) << "locale language must be 'de'"; } class getCountry : public ::testing::Test { public: // initialise your test code values here. void SetUp() { } void TearDown() { } }; // class getCountry TEST_F(getCountry, getCountry_001) { rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); rtl::OUString suCountry = aLocale.getCountry(); printf("Country: %s\n", rtl::OUStringToOString(suCountry, osl_getThreadTextEncoding()).getStr()); ASSERT_TRUE(suCountry.equals(rtl::OUString::createFromAscii("DE"))) << "locale country must be 'DE'"; } TEST_F(getCountry, getCountry_002) { rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); rtl::OUString suCountry = rtl_locale_getCountry(aLocale.getData()); printf("Country: %s\n", rtl::OUStringToOString(suCountry, osl_getThreadTextEncoding()).getStr()); ASSERT_TRUE(suCountry.equals(rtl::OUString::createFromAscii("DE"))) << "locale country must be 'DE'"; } class getVariant : public ::testing::Test { public: // initialise your test code values here. void SetUp() { } void TearDown() { } }; // class getVariant TEST_F(getVariant, getVariant_001) { rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); rtl::OUString suVariant = aLocale.getVariant(); printf("Variant: %s\n", rtl::OUStringToOString(suVariant, osl_getThreadTextEncoding()).getStr()); ASSERT_TRUE(suVariant.equals(rtl::OUString::createFromAscii("hochdeutsch"))) << "locale variant must be 'hochdeutsch'"; } TEST_F(getVariant, getVariant_002) { rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); rtl::OUString suVariant = rtl_locale_getVariant(aLocale.getData()); printf("Variant: %s\n", rtl::OUStringToOString(suVariant, osl_getThreadTextEncoding()).getStr()); ASSERT_TRUE(suVariant.equals(rtl::OUString::createFromAscii("hochdeutsch"))) << "locale variant must be 'hochdeutsch'"; } class hashCode : public ::testing::Test { public: // initialise your test code values here. void SetUp() { } void TearDown() { } }; // class hashCode TEST_F(hashCode, hashCode_001) { rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); sal_Int32 nHashCode = aLocale.hashCode(); printf("Hashcode: %d\n", nHashCode); ASSERT_TRUE(nHashCode != 0) << "locale hashcode must be 3831"; } TEST_F(hashCode, hashCode_002) { rtl::OLocale aLocale = ::rtl::OLocale::getDefault(); sal_Int32 nHashCode = rtl_locale_hashCode(aLocale.getData()); printf("Hashcode: %d\n", nHashCode); ASSERT_TRUE(nHashCode != 0) << "locale hashcode must be 3831"; } class equals : public ::testing::Test { public: // initialise your test code values here. void SetUp() { } void TearDown() { } }; // class equals TEST_F(equals, 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); ASSERT_TRUE(bLocaleAreEqual == sal_True) << "check operator ==()"; } TEST_F(equals, 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()); printf("rtl_locale_equals() result: %d\n", nEqual); ASSERT_TRUE(nEqual != 0); } } // namespace rtl_locale // ----------------------------------------------------------------------------- int main(int argc, char **argv) { // start message printf("Initializing ...\n" ); rtl_locale::setDefaultLocale(); printf("Initialization Done.\n" ); ::testing::InitGoogleTest(&argc, argv); return RUN_ALL_TESTS(); }