summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorJędrzej Nowacki <jedrzej.nowacki@digia.com>2014-05-23 13:45:27 +0200
committerJędrzej Nowacki <jedrzej.nowacki@digia.com>2014-07-25 15:25:05 +0200
commitc8edde3b833cb3d15377afed13d6fcd2e5fa5cd9 (patch)
tree73a1b06831a7ebba3d52221561eed1a743221f48 /tests
parentce14208c3823580471ce783f19d5011f0b7bc036 (diff)
Fix QJsonObject const index operator
The operator should always return an undefined values for an empty object Change-Id: Ic38f7660d77c64b2d001967bc5109df4185db74a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/auto/corelib/json/tst_qtjson.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/auto/corelib/json/tst_qtjson.cpp b/tests/auto/corelib/json/tst_qtjson.cpp
index 761da2b0a3..a4254cb65c 100644
--- a/tests/auto/corelib/json/tst_qtjson.cpp
+++ b/tests/auto/corelib/json/tst_qtjson.cpp
@@ -90,6 +90,7 @@ private Q_SLOTS:
void nullValues();
void nullArrays();
void nullObject();
+ void constNullObject();
void keySorting();
@@ -1006,6 +1007,23 @@ void tst_QtJson::nullObject()
QCOMPARE(nullObject.contains("foo"), false);
}
+void tst_QtJson::constNullObject()
+{
+ const QJsonObject nullObject;
+ QJsonObject nonNull;
+ nonNull.insert(QLatin1String("foo"), QLatin1String("bar"));
+
+ QCOMPARE(nullObject, QJsonObject());
+ QVERIFY(nullObject != nonNull);
+ QVERIFY(nonNull != nullObject);
+
+ QCOMPARE(nullObject.size(), 0);
+ QCOMPARE(nullObject.keys(), QStringList());
+ QCOMPARE(nullObject, QJsonObject());
+ QCOMPARE(nullObject.contains("foo"), false);
+ QCOMPARE(nullObject["foo"], QJsonValue(QJsonValue::Undefined));
+}
+
void tst_QtJson::keySorting()
{
const char *json = "{ \"B\": true, \"A\": false }";