QLocale(QString()) does not return the default locale. If no
locale is specified, use the QLocale() constructor.
Change-Id: I76198b7ea66a6326483ec47ac36e080159ca459a
Reviewed-by: Martin Jones <martin.jones@nokia.com>
QV8LocaleDataDeletable *d = localeV8Data(v8engine);
v8::Local<v8::Object> v8Value = d->constructor->NewInstance();
QV8LocaleDataResource *r = new QV8LocaleDataResource(v8engine);
- r->locale = QLocale(locale);
+ if (locale.isEmpty())
+ r->locale = QLocale();
+ else
+ r->locale = QLocale(locale);
v8Value->SetExternalResource(r);
return v8Value;
tst_qdeclarativelocale() { }
private slots:
+ void defaultLocale();
+
void properties_data();
void properties();
void currencySymbol_data();
QDeclarativeEngine engine;
};
+void tst_qdeclarativelocale::defaultLocale()
+{
+ QDeclarativeComponent c(&engine, QUrl::fromLocalFile(TESTDATA("properties.qml")));
+
+ QObject *obj = c.create();
+ QVERIFY(obj);
+
+ QCOMPARE(obj->property("name").toString(), QLocale().name());
+}
+
#define LOCALE_PROP(type,prop) { #prop, QVariant(type(qlocale.prop())) }
void tst_qdeclarativelocale::addPropertyData(const QString &l)