File indexing completed on 2024-04-28 16:01:12
0001 /* 0002 * SPDX-FileCopyrightText: 2020-2021 Han Young <hanyoung@protonmail.com> 0003 * 0004 * SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 #include "locationquerytest.h" 0007 0008 void LocationQueryTest::testLocate() 0009 { 0010 qRegisterMetaType<LocationQueryResult>("LocationQueryResult"); 0011 qRegisterMetaType<std::vector<LocationQueryResult>>( 0012 "std::vector<LocationQueryResult>"); 0013 finished_spy = new QSignalSpy(d, &LocationQuery::located); 0014 d->locate(); 0015 0016 auto ret = finished_spy->wait(30000); 0017 0018 // if failed to located, abort 0019 if (!ret) 0020 return; 0021 0022 auto location = 0023 finished_spy->takeFirst().at(0).value<LocationQueryResult>(); 0024 QVERIFY(!location.name().isEmpty()); 0025 } 0026 0027 void LocationQueryTest::testQuery() 0028 { 0029 d->query(QStringLiteral("London")); 0030 0031 finished_spy = new QSignalSpy(d, &LocationQuery::queryFinished); 0032 networkError_spy = new QSignalSpy(d, &LocationQuery::queryError); 0033 0034 auto ret = finished_spy->wait(30000); 0035 0036 if (ret) { 0037 QVERIFY(finished_spy->takeFirst() 0038 .at(0) 0039 .value<std::vector<LocationQueryResult>>() 0040 .size() > 0); 0041 } else { 0042 QVERIFY(networkError_spy->count() > 0); 0043 } 0044 } 0045 QTEST_MAIN(LocationQueryTest)