File indexing completed on 2024-04-28 16:01:13
0001 /* 0002 * SPDX-FileCopyrightText: 2020-2021 Han Young <hanyoung@protonmail.com> 0003 * 0004 * SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 #include "sunrisetest.h" 0007 0008 void SunriseTest::testJson() 0009 { 0010 auto date = QDateTime::currentDateTime(); 0011 d1.setHighMoon({date, 0.1}); 0012 d1.setLowMoon({date, 0.1}); 0013 d1.setMoonPhase(0.5); 0014 d1.setMoonRise(date); 0015 d1.setMoonSet(date); 0016 d1.setSolarMidnight({date, 0.6}); 0017 d1.setSolarNoon({date, 0.5}); 0018 d1.setSunRise(date); 0019 d1.setSunSet(date); 0020 d2 = Sunrise::fromJson(d1.toJson()); 0021 0022 QCOMPARE(d2.highMoon(), d1.highMoon()); 0023 QCOMPARE(std::abs(d2.highMoonTime().secsTo(d1.highMoonTime())) < 1, true); 0024 QCOMPARE(d2.lowMoon(), d1.lowMoon()); 0025 QCOMPARE(std::abs(d2.lowMoonTime().secsTo(d1.lowMoonTime())) < 1, true); 0026 QCOMPARE(d2.moonPhase(), d1.moonPhase()); 0027 QCOMPARE(std::abs(d2.moonRise().secsTo(d1.moonRise())) < 1, true); 0028 QCOMPARE(std::abs(d2.moonSet().secsTo(d1.moonSet())) < 1, true); 0029 QCOMPARE(d2.solarMidnight(), d1.solarMidnight()); 0030 QCOMPARE(std::abs(d2.solarMidnightTime().secsTo(d1.solarMidnightTime())) < 0031 1, 0032 true); 0033 QCOMPARE(d2.solarNoon(), d2.solarNoon()); 0034 QCOMPARE(std::abs(d2.solarNoonTime().secsTo(d1.solarNoonTime())) < 1, true); 0035 } 0036 QTEST_MAIN(SunriseTest)