diff options
author | Jędrzej Nowacki <jedrzej.nowacki@digia.com> | 2014-02-11 13:24:48 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-02-13 16:30:27 +0100 |
commit | b505062a89995ea8e336f76df248a6dff9e8f03b (patch) | |
tree | 0cdaf37a55952108c1fc57eb3c533ad766180fdb | |
parent | de5e3c6631c0bfd8562feb050339187a55116b4f (diff) | |
download | qtenginio-b505062a89995ea8e336f76df248a6dff9e8f03b.tar.gz |
Stabilize tst_EnginioClient::fullTextSearch
Change-Id: Iecafc69a45b28cae3bbb5299b8b789be65fd6cbf
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
-rw-r--r-- | tests/auto/enginioclient/tst_enginioclient.cpp | 56 |
1 files changed, 17 insertions, 39 deletions
diff --git a/tests/auto/enginioclient/tst_enginioclient.cpp b/tests/auto/enginioclient/tst_enginioclient.cpp index a36a743..b9941fc 100644 --- a/tests/auto/enginioclient/tst_enginioclient.cpp +++ b/tests/auto/enginioclient/tst_enginioclient.cpp @@ -679,63 +679,41 @@ void tst_EnginioClient::fullTextSearch() { EnginioClient client; QObject::connect(&client, SIGNAL(error(EnginioReply *)), this, SLOT(error(EnginioReply *))); - client.setBackendId(_backendId); - client.setServiceUrl(EnginioTests::TESTAPP_URL); - - QSignalSpy spyError(&client, SIGNAL(error(EnginioReply*))); + client.setBackendId("52fb5b6de5bde556dc03b107"); - int resultCount1 = 0; { - QSignalSpy spy(&client, SIGNAL(finished(EnginioReply*))); QJsonObject searchQuery = QJsonDocument::fromJson( - "{\"objectTypes\": [\"objects." + EnginioTests::CUSTOM_OBJECT1.toUtf8() + "\"]," - "\"search\": {\"phrase\": \"Query\"}}").object(); + "{\"objectTypes\": [\"objects.fullTextSearch1\"]," + "\"search\": {\"phrase\": \"cat\"}}").object(); QVERIFY(!searchQuery.isEmpty()); - const EnginioReply* reqId = client.fullTextSearch(searchQuery); - QVERIFY(reqId); - - - if (!spy.wait()) - reqId->dumpDebugInfo(); + EnginioReply *reply = client.fullTextSearch(searchQuery); + QVERIFY(reply); - QCOMPARE(spy.count(), 1); - QCOMPARE(spyError.count(), 0); - - const EnginioReply *response = spy[0][0].value<EnginioReply*>(); + QTRY_VERIFY(reply->isFinished()); + CHECK_NO_ERROR(reply); - QCOMPARE(response, reqId); - CHECK_NO_ERROR(response); - QJsonObject data = response->data(); + QJsonObject data = reply->data(); QVERIFY(!data.isEmpty()); QVERIFY(!data["results"].isUndefined()); - resultCount1 = data["results"].toArray().count(); - QVERIFY(resultCount1); - qDebug() << resultCount1 << "results on objects." + EnginioTests::CUSTOM_OBJECT1 + " with phrase \"Query\"."; + QCOMPARE(data["results"].toArray().count(), 2); } { - QSignalSpy spy(&client, SIGNAL(finished(EnginioReply*))); QJsonObject searchQuery = QJsonDocument::fromJson( - "{\"objectTypes\": [\"objects." + EnginioTests::CUSTOM_OBJECT1.toUtf8() + "\", \"objects." + EnginioTests::CUSTOM_OBJECT2.toUtf8() + "\"]," - "\"search\": {\"phrase\": \"object OR test\", \"properties\": [\"stringValue\"]}}").object(); + "{\"objectTypes\": [\"objects.fullTextSearch1\", \"objects.fullTextSearch2\"]," + "\"search\": {\"phrase\": \"cat OR dog\", \"properties\": [\"stringValue\"]}}").object(); QVERIFY(!searchQuery.isEmpty()); - const EnginioReply* reqId = client.fullTextSearch(searchQuery); - QVERIFY(reqId); - - QTRY_COMPARE(spy.count(), 1); - QCOMPARE(spyError.count(), 0); + EnginioReply *reply = client.fullTextSearch(searchQuery); + QVERIFY(reply); - const EnginioReply *response = spy[0][0].value<EnginioReply*>(); + QTRY_VERIFY(reply->isFinished()); + CHECK_NO_ERROR(reply); - QCOMPARE(response, reqId); - CHECK_NO_ERROR(response); - QJsonObject data = response->data(); + QJsonObject data = reply->data(); QVERIFY(!data.isEmpty()); QVERIFY(!data["results"].isUndefined()); - int resultCount2 = data["results"].toArray().count(); - qDebug() << resultCount2 << " results on objects." + EnginioTests::CUSTOM_OBJECT1 + "and objects." + EnginioTests::CUSTOM_OBJECT2 + " with phrase \"object OR test\"."; - QVERIFY(resultCount2 > resultCount1); + QCOMPARE(data["results"].toArray().count(), 4); } } |