summaryrefslogtreecommitdiffstats
path: root/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@qt.io>2017-08-02 22:49:38 +0200
committerOswald Buddenhagen <oswald.buddenhagen@qt.io>2017-08-02 22:52:32 +0200
commitee07b912a1768ea0b103544f9eeac41f3cf50cf6 (patch)
tree15bfa7e4a9c098511c1fc89e2b2c240520b85e2d /tests/auto/corelib/tools/qlocale/tst_qlocale.cpp
parent4bfff6a98b59b32605d881a463ad3edc221a7dc8 (diff)
parenta96656a8fb6a3c1fc7765659efff28f807fd0deb (diff)
Merge remote-tracking branch 'origin/5.9' into dev
Conflicts: src/plugins/platforms/xcb/qxcbconnection.h src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/plugins/sqldrivers/sqlite/qsql_sqlite.cpp src/plugins/styles/mac/qmacstyle_mac.mm src/widgets/widgets/qdockarealayout.cpp src/widgets/widgets/qmainwindow.cpp src/widgets/widgets/qmainwindowlayout.cpp src/widgets/widgets/qmainwindowlayout_p.h tests/auto/corelib/tools/qlocale/tst_qlocale.cpp tests/auto/other/macnativeevents/BLACKLIST tests/auto/widgets/widgets/qmenu/BLACKLIST Change-Id: Ic8e724b80a65e7b1af25511b0e674d209265e567
Diffstat (limited to 'tests/auto/corelib/tools/qlocale/tst_qlocale.cpp')
-rw-r--r--tests/auto/corelib/tools/qlocale/tst_qlocale.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp b/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp
index 88984feff7..d424e6086d 100644
--- a/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp
+++ b/tests/auto/corelib/tools/qlocale/tst_qlocale.cpp
@@ -139,6 +139,7 @@ private slots:
void formattedDataSize_data();
void formattedDataSize();
+ void bcp47Name();
private:
QString m_decimal, m_thousand, m_sdate, m_ldate, m_time;
@@ -2609,5 +2610,26 @@ void tst_QLocale::formattedDataSize()
QCOMPARE(QLocale(language).formattedDataSize(bytes, decimalPlaces, units), output);
}
+void tst_QLocale::bcp47Name()
+{
+ QCOMPARE(QLocale("C").bcp47Name(), QStringLiteral("en"));
+ QCOMPARE(QLocale("en").bcp47Name(), QStringLiteral("en"));
+ QCOMPARE(QLocale("en_US").bcp47Name(), QStringLiteral("en"));
+ QCOMPARE(QLocale("en_GB").bcp47Name(), QStringLiteral("en-GB"));
+ QCOMPARE(QLocale("en_DE").bcp47Name(), QStringLiteral("en-DE"));
+ QCOMPARE(QLocale("de_DE").bcp47Name(), QStringLiteral("de"));
+ QCOMPARE(QLocale("sr_RS").bcp47Name(), QStringLiteral("sr"));
+ QCOMPARE(QLocale("sr_Cyrl_RS").bcp47Name(), QStringLiteral("sr"));
+ QCOMPARE(QLocale("sr_Latn_RS").bcp47Name(), QStringLiteral("sr-Latn"));
+ QCOMPARE(QLocale("sr_ME").bcp47Name(), QStringLiteral("sr-ME"));
+ QCOMPARE(QLocale("sr_Cyrl_ME").bcp47Name(), QStringLiteral("sr-Cyrl-ME"));
+ QCOMPARE(QLocale("sr_Latn_ME").bcp47Name(), QStringLiteral("sr-ME"));
+
+ // Fall back to defaults when country isn't in CLDR for this language:
+ QCOMPARE(QLocale("sr_HR").bcp47Name(), QStringLiteral("sr"));
+ QCOMPARE(QLocale("sr_Cyrl_HR").bcp47Name(), QStringLiteral("sr"));
+ QCOMPARE(QLocale("sr_Latn_HR").bcp47Name(), QStringLiteral("sr-Latn"));
+}
+
QTEST_MAIN(tst_QLocale)
#include "tst_qlocale.moc"