File indexing completed on 2024-04-28 04:42:40

0001 /*
0002  * SPDX-FileCopyrightText: 2020-2021 Han Young <hanyoung@protonmail.com>
0003  *
0004  * SPDX-License-Identifier: LGPL-2.0-or-later
0005  */
0006 #include "dailyweatherforecasttest.h"
0007 #include <kweathercore/hourlyweatherforecast.h>
0008 
0009 using namespace KWeatherCore;
0010 
0011 void DailyForecastTest::testNull()
0012 {
0013     QCOMPARE(d1.isValid(), true);
0014 }
0015 
0016 void DailyForecastTest::testHourlyMerge()
0017 {
0018     for (int i = 0; i < 24; ++i) {
0019         HourlyWeatherForecast h(QDateTime::currentDateTime().addSecs(i * 3600));
0020         h.setWeatherDescription(QStringLiteral("sunny"));
0021         h.setWeatherIcon(QStringLiteral("sunny"));
0022         h.setTemperature(25);
0023         h.setPressure(100);
0024         h.setWindDirectionDegree(90.0);
0025         h.setFog(0.2);
0026         h.setUvIndex(0.8);
0027         h.setWindSpeed(5);
0028         h.setHumidity(0.1);
0029 
0030         d1 += h;
0031     }
0032     QCOMPARE(d1.isValid(), false);
0033 
0034     QCOMPARE(d1.hourlyWeatherForecast().size(), 24);
0035 }
0036 void DailyForecastTest::testDailyMerge()
0037 {
0038     const auto &vec = d1.hourlyWeatherForecast();
0039     for (auto &h : vec) {
0040         d2 += h;
0041     }
0042 
0043     QCOMPARE(d2.hourlyWeatherForecast().size(), d1.hourlyWeatherForecast().size());
0044 }
0045 void DailyForecastTest::testJson()
0046 {
0047     auto d3 = DailyWeatherForecast::fromJson(d2.toJson());
0048 
0049     QCOMPARE(d3.toJson(), d2.toJson());
0050 }
0051 QTEST_MAIN(DailyForecastTest)
0052 
0053 #include "moc_dailyweatherforecasttest.cpp"