diff options
author | Øystein Heskestad <oystein.heskestad@qt.io> | 2021-05-20 09:52:50 +0200 |
---|---|---|
committer | Øystein Heskestad <oystein.heskestad@qt.io> | 2021-05-20 11:42:24 +0200 |
commit | c932ad7e7518043851066ebdad340d2d1c092d1d (patch) | |
tree | b22f1a3bf4d833b3150a191e25e56ca70561421f /tests/auto/webchannel/tst_webchannel.cpp | |
parent | 791a955cc96a6d2dd73961bddf622659b32d36e3 (diff) |
Add tests for nullptr, QVariantHash, and QVariantMap in testWrapValues
Change-Id: I76678df71d9a3c976e1722fd655d796050562501
Reviewed-by: Arno Rehn <a.rehn@menlosystems.com>
Diffstat (limited to 'tests/auto/webchannel/tst_webchannel.cpp')
-rw-r--r-- | tests/auto/webchannel/tst_webchannel.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/auto/webchannel/tst_webchannel.cpp b/tests/auto/webchannel/tst_webchannel.cpp index 4f7949e..ee4dac1 100644 --- a/tests/auto/webchannel/tst_webchannel.cpp +++ b/tests/auto/webchannel/tst_webchannel.cpp @@ -905,6 +905,37 @@ void TestWebChannel::testWrapValues() QCOMPARE(value.toArray(), QJsonArray({QJsonObject{{"foo", 1}, {"bar", 2}}, QJsonObject{{"foo", 3}, {"bar", 4}}})); } + { + QVariant variant = QVariant::fromValue(nullptr); + QJsonValue value = channel.d_func()->publisher->wrapResult(variant, m_dummyTransport); + QVERIFY(value.isNull()); + } + { + QVariantHash hash; + hash["One"] = 1; + hash["Two"] = 2; + QVariant variant = QVariant::fromValue(hash); + QJsonValue value = channel.d_func()->publisher->wrapResult(variant, m_dummyTransport); + QVERIFY(value.isObject()); + QVERIFY(value["One"].isDouble()); + QCOMPARE(value["One"].toInt(), 1); + QVERIFY(value["Two"].isDouble()); + QCOMPARE(value["Two"].toInt(), 2); + QVERIFY(value["Three"].isUndefined()); + } + { + QVariantMap map; + map["One"] = 1; + map["Two"] = 2; + QVariant variant = QVariant::fromValue(map); + QJsonValue value = channel.d_func()->publisher->wrapResult(variant, m_dummyTransport); + QVERIFY(value.isObject()); + QVERIFY(value["One"].isDouble()); + QCOMPARE(value["One"].toInt(), 1); + QVERIFY(value["Two"].isDouble()); + QCOMPARE(value["Two"].toInt(), 2); + QVERIFY(value["Three"].isUndefined()); + } } void TestWebChannel::testWrapObjectWithMultipleTransports() |