File indexing completed on 2024-04-14 04:36:17
0001 /* 0002 SPDX-FileCopyrightText: 2021 Volker Krause <vkrause@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "../src/lib/gbfs/gbfsreader.cpp" 0008 0009 #include <QJsonDocument> 0010 #include <QJsonObject> 0011 #include <QTest> 0012 0013 #include <cmath> 0014 0015 using namespace KPublicTransport; 0016 0017 class GBFSReaderTest : public QObject 0018 { 0019 Q_OBJECT 0020 private Q_SLOTS: 0021 void testReadCoords() 0022 { 0023 auto obj = QJsonDocument::fromJson("{\"lat\":48.396619,\"lon\":9.990212}").object(); 0024 QCOMPARE(obj.size(), 2); 0025 QCOMPARE(GBFSReader::readLatitude(obj), 48.396619); 0026 QCOMPARE(GBFSReader::readLongitude(obj), 9.990212); 0027 obj = QJsonDocument::fromJson("{\"lat\":\"41.4852\",\"lon\":\"-81.8039\",\"vehicle_type\":\"scooter\"}").object(); 0028 QCOMPARE(obj.size(), 3); 0029 QCOMPARE(GBFSReader::readLatitude(obj), 41.4852); 0030 QCOMPARE(GBFSReader::readLongitude(obj), -81.8039); 0031 obj = {}; 0032 QCOMPARE(GBFSReader::readLatitude(obj), NAN); 0033 QCOMPARE(GBFSReader::readLongitude(obj), NAN); 0034 } 0035 }; 0036 0037 QTEST_APPLESS_MAIN(GBFSReaderTest) 0038 0039 #include "gbfsreadertest.moc"