summaryrefslogtreecommitdiff
path: root/i18nlangtag
diff options
context:
space:
mode:
authorEike Rathke <erack@redhat.com>2016-04-21 19:02:48 +0200
committerEike Rathke <erack@redhat.com>2016-04-21 19:04:00 +0200
commit74e9456c6d7c43739c3e57640e52b3f851c4f558 (patch)
tree24d822dded719b1c89f05a26d0e3e39b53c95247 /i18nlangtag
parent600c2ca58bf7c2a38d4a41a80bdc1ad8373a9ff0 (diff)
unit test 'C' locale shall map to 'en-US'
Change-Id: Id4772b087add703537b588c961283466436f10c1
Diffstat (limited to 'i18nlangtag')
-rw-r--r--i18nlangtag/qa/cppunit/test_languagetag.cxx24
1 files changed, 24 insertions, 0 deletions
diff --git a/i18nlangtag/qa/cppunit/test_languagetag.cxx b/i18nlangtag/qa/cppunit/test_languagetag.cxx
index 766de5affea3..a5d40f9afb0b 100644
--- a/i18nlangtag/qa/cppunit/test_languagetag.cxx
+++ b/i18nlangtag/qa/cppunit/test_languagetag.cxx
@@ -562,6 +562,30 @@ void TestLanguageTag::testAllTags()
CPPUNIT_ASSERT( joker.getLanguageType() == LANGUAGE_USER_PRIV_JOKER );
}
+ // 'C' locale shall map to 'en-US'
+ {
+ LanguageTag aTag( "C" );
+ CPPUNIT_ASSERT( aTag.getLanguage() == "en" );
+ CPPUNIT_ASSERT( aTag.getCountry() == "US" );
+ lang::Locale aLocale = aTag.getLocale();
+ CPPUNIT_ASSERT( aTag.getBcp47() == "en-US" );
+ CPPUNIT_ASSERT( aLocale.Language == "en" );
+ CPPUNIT_ASSERT( aLocale.Country == "US" );
+ CPPUNIT_ASSERT( aLocale.Variant.isEmpty() );
+ CPPUNIT_ASSERT( aTag.getLanguageType() == LANGUAGE_ENGLISH_US );
+ }
+ {
+ LanguageTag aTag( lang::Locale("C","","") );
+ CPPUNIT_ASSERT( aTag.getLanguage() == "en" );
+ CPPUNIT_ASSERT( aTag.getCountry() == "US" );
+ lang::Locale aLocale = aTag.getLocale();
+ CPPUNIT_ASSERT( aTag.getBcp47() == "en-US" );
+ CPPUNIT_ASSERT( aLocale.Language == "en" );
+ CPPUNIT_ASSERT( aLocale.Country == "US" );
+ CPPUNIT_ASSERT( aLocale.Variant.isEmpty() );
+ CPPUNIT_ASSERT( aTag.getLanguageType() == LANGUAGE_ENGLISH_US );
+ }
+
// test reset() methods
{
LanguageTag aTag( LANGUAGE_DONTKNOW );