summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/auto/corelib/tools/qstringlist/tst_qstringlist.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/auto/corelib/tools/qstringlist/tst_qstringlist.cpp b/tests/auto/corelib/tools/qstringlist/tst_qstringlist.cpp
index 4763f11c48..2c4ec62936 100644
--- a/tests/auto/corelib/tools/qstringlist/tst_qstringlist.cpp
+++ b/tests/auto/corelib/tools/qstringlist/tst_qstringlist.cpp
@@ -45,6 +45,9 @@
#include <qstringlist.h>
#include <locale.h>
+#ifdef Q_OS_WINCE
+#include <windows.h> // needed for GetUserDefaultLCID
+#endif
class tst_QStringList : public QObject
{
@@ -212,13 +215,23 @@ void tst_QStringList::sort()
list2 << "BETA" << "Gamma" << "alpha" << "beta" << "epsilon" << "gAmma" << "gamma";
QCOMPARE( list1, list2 );
+#ifdef Q_OS_WINCE
+ DWORD oldLcid = GetUserDefaultLCID();
+ // Assume c locale to be english
+ SetUserDefaultLCID(MAKELCID(MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US), SORT_DEFAULT));
+#else
char *current_locale = setlocale(LC_ALL, "C");
+#endif
QStringList list3, list4;
list3 << "alpha" << "beta" << "BETA" << "gamma" << "Gamma" << "gAmma" << "epsilon";
list3.sort(Qt::CaseInsensitive);
list4 << "alpha" << "beta" << "BETA" << "epsilon" << "Gamma" << "gAmma" << "gamma";
QCOMPARE( list3, list4 );
+#ifdef Q_OS_WINCE
+ SetUserDefaultLCID(oldLcid);
+#else
setlocale(LC_ALL, current_locale);
+#endif
}
void tst_QStringList::replaceInStrings()