File indexing completed on 2024-05-19 16:18:21
0001 /*************************************************************************** 0002 * SPDX-FileCopyrightText: 2022 S. MANKOWSKI stephane@mankowski.fr 0003 * SPDX-FileCopyrightText: 2022 G. DE BURE support@mankowski.fr 0004 * SPDX-License-Identifier: GPL-3.0-or-later 0005 ***************************************************************************/ 0006 /** @file 0007 * This file is a test for SKGPeriodEdit component. 0008 * 0009 * @author Stephane MANKOWSKI / Guillaume DE BURE 0010 */ 0011 #include "skgtestperiodedit.h" 0012 0013 #include "skgperiodedit.h" 0014 0015 void SKGTESTPeriodEdit::TestPeriods_data() 0016 { 0017 QTest::addColumn<int>("period"); 0018 QTest::addColumn<int>("interval"); 0019 QTest::addColumn<int>("value"); 0020 QTest::addColumn<QDate>("date"); 0021 QTest::addColumn<QDate>("expectedBeginDate"); 0022 QTest::addColumn<QDate>("expectedEndDate"); 0023 0024 QTest::newRow("CURRENT DAY") << static_cast<int>(SKGPeriodEdit::CURRENT) << static_cast<int>(SKGPeriodEdit::DAY) << 0 << QDate(2014, 12, 3) << QDate(2014, 12, 3) << QDate(2014, 12, 3); 0025 QTest::newRow("CURRENT WEEK") << static_cast<int>(SKGPeriodEdit::CURRENT) << static_cast<int>(SKGPeriodEdit::WEEK) << 0 << QDate(2014, 12, 3) << QDate(2014, 12, 1) << QDate(2014, 12, 7); 0026 QTest::newRow("CURRENT MONTH") << static_cast<int>(SKGPeriodEdit::CURRENT) << static_cast<int>(SKGPeriodEdit::MONTH) << 0 << QDate(2014, 12, 3) << QDate(2014, 12, 1) << QDate(2014, 12, 31); 0027 QTest::newRow("CURRENT QUARTER") << static_cast<int>(SKGPeriodEdit::CURRENT) << static_cast<int>(SKGPeriodEdit::QUARTER) << 0 << QDate(2014, 12, 3) << QDate(2014, 10, 1) << QDate(2014, 12, 31); 0028 QTest::newRow("CURRENT SEMESTER") << static_cast<int>(SKGPeriodEdit::CURRENT) << static_cast<int>(SKGPeriodEdit::SEMESTER) << 0 << QDate(2014, 12, 3) << QDate(2014, 7, 1) << QDate(2014, 12, 31); 0029 QTest::newRow("CURRENT YEAR") << static_cast<int>(SKGPeriodEdit::CURRENT) << static_cast<int>(SKGPeriodEdit::YEAR) << 0 << QDate(2014, 12, 3) << QDate(2014, 1, 1) << QDate(2014, 12, 31); 0030 0031 QTest::newRow("PREVIOUS DAY") << static_cast<int>(SKGPeriodEdit::PREVIOUS) << static_cast<int>(SKGPeriodEdit::DAY) << 1 << QDate(2014, 12, 3) << QDate(2014, 12, 2) << QDate(2014, 12, 2); 0032 QTest::newRow("PREVIOUS WEEK") << static_cast<int>(SKGPeriodEdit::PREVIOUS) << static_cast<int>(SKGPeriodEdit::WEEK) << 1 << QDate(2014, 12, 3) << QDate(2014, 11, 24) << QDate(2014, 11, 30); 0033 QTest::newRow("PREVIOUS MONTH") << static_cast<int>(SKGPeriodEdit::PREVIOUS) << static_cast<int>(SKGPeriodEdit::MONTH) << 1 << QDate(2014, 12, 3) << QDate(2014, 11, 1) << QDate(2014, 11, 30); 0034 QTest::newRow("PREVIOUS QUARTER") << static_cast<int>(SKGPeriodEdit::PREVIOUS) << static_cast<int>(SKGPeriodEdit::QUARTER) << 1 << QDate(2014, 12, 3) << QDate(2014, 7, 1) << QDate(2014, 9, 30); 0035 QTest::newRow("PREVIOUS SEMESTER") << static_cast<int>(SKGPeriodEdit::PREVIOUS) << static_cast<int>(SKGPeriodEdit::SEMESTER) << 1 << QDate(2014, 12, 3) << QDate(2014, 1, 1) << QDate(2014, 6, 30); 0036 QTest::newRow("PREVIOUS YEAR") << static_cast<int>(SKGPeriodEdit::PREVIOUS) << static_cast<int>(SKGPeriodEdit::YEAR) << 1 << QDate(2014, 12, 3) << QDate(2013, 1, 1) << QDate(2013, 12, 31); 0037 0038 QTest::newRow("LAST DAY") << static_cast<int>(SKGPeriodEdit::LAST) << static_cast<int>(SKGPeriodEdit::DAY) << 1 << QDate(2014, 12, 3) << QDate(2014, 12, 3) << QDate(2014, 12, 3); 0039 QTest::newRow("LAST WEEK") << static_cast<int>(SKGPeriodEdit::LAST) << static_cast<int>(SKGPeriodEdit::WEEK) << 1 << QDate(2014, 12, 3) << QDate(2014, 11, 27) << QDate(2014, 12, 3); 0040 QTest::newRow("LAST MONTH") << static_cast<int>(SKGPeriodEdit::LAST) << static_cast<int>(SKGPeriodEdit::MONTH) << 1 << QDate(2014, 12, 3) << QDate(2014, 11, 4) << QDate(2014, 12, 3); 0041 QTest::newRow("LAST QUARTER") << static_cast<int>(SKGPeriodEdit::LAST) << static_cast<int>(SKGPeriodEdit::QUARTER) << 1 << QDate(2014, 12, 3) << QDate(2014, 9, 4) << QDate(2014, 12, 3); 0042 QTest::newRow("LAST SEMESTER") << static_cast<int>(SKGPeriodEdit::LAST) << static_cast<int>(SKGPeriodEdit::SEMESTER) << 1 << QDate(2014, 12, 3) << QDate(2014, 6, 4) << QDate(2014, 12, 3); 0043 QTest::newRow("LAST YEAR") << static_cast<int>(SKGPeriodEdit::LAST) << static_cast<int>(SKGPeriodEdit::YEAR) << 1 << QDate(2014, 12, 3) << QDate(2013, 12, 4) << QDate(2014, 12, 3); 0044 0045 QTest::newRow("PREVIOUS 2 DAY") << static_cast<int>(SKGPeriodEdit::PREVIOUS) << static_cast<int>(SKGPeriodEdit::DAY) << 2 << QDate(2014, 12, 3) << QDate(2014, 12, 1) << QDate(2014, 12, 2); 0046 QTest::newRow("PREVIOUS 2 WEEK") << static_cast<int>(SKGPeriodEdit::PREVIOUS) << static_cast<int>(SKGPeriodEdit::WEEK) << 2 << QDate(2014, 12, 3) << QDate(2014, 11, 17) << QDate(2014, 11, 30); 0047 QTest::newRow("PREVIOUS 2 MONTH") << static_cast<int>(SKGPeriodEdit::PREVIOUS) << static_cast<int>(SKGPeriodEdit::MONTH) << 2 << QDate(2014, 12, 3) << QDate(2014, 10, 1) << QDate(2014, 11, 30); 0048 QTest::newRow("PREVIOUS 2 QUARTER") << static_cast<int>(SKGPeriodEdit::PREVIOUS) << static_cast<int>(SKGPeriodEdit::QUARTER) << 2 << QDate(2014, 12, 3) << QDate(2014, 4, 1) << QDate(2014, 9, 30); 0049 QTest::newRow("PREVIOUS 2 SEMESTER") << static_cast<int>(SKGPeriodEdit::PREVIOUS) << static_cast<int>(SKGPeriodEdit::SEMESTER) << 2 << QDate(2014, 12, 3) << QDate(2013, 7, 1) << QDate(2014, 6, 30); 0050 QTest::newRow("PREVIOUS 2 YEAR") << static_cast<int>(SKGPeriodEdit::PREVIOUS) << static_cast<int>(SKGPeriodEdit::YEAR) << 2 << QDate(2014, 12, 3) << QDate(2012, 1, 1) << QDate(2013, 12, 31); 0051 0052 QTest::newRow("LAST 2 DAY") << static_cast<int>(SKGPeriodEdit::LAST) << static_cast<int>(SKGPeriodEdit::DAY) << 2 << QDate(2014, 12, 3) << QDate(2014, 12, 2) << QDate(2014, 12, 3); 0053 QTest::newRow("LAST 2 WEEK") << static_cast<int>(SKGPeriodEdit::LAST) << static_cast<int>(SKGPeriodEdit::WEEK) << 2 << QDate(2014, 12, 3) << QDate(2014, 11, 20) << QDate(2014, 12, 3); 0054 QTest::newRow("LAST 2 MONTH") << static_cast<int>(SKGPeriodEdit::LAST) << static_cast<int>(SKGPeriodEdit::MONTH) << 2 << QDate(2014, 12, 3) << QDate(2014, 10, 4) << QDate(2014, 12, 3); 0055 QTest::newRow("LAST 2 QUARTER") << static_cast<int>(SKGPeriodEdit::LAST) << static_cast<int>(SKGPeriodEdit::QUARTER) << 2 << QDate(2014, 12, 3) << QDate(2014, 6, 4) << QDate(2014, 12, 3); 0056 QTest::newRow("LAST 2 SEMESTER") << static_cast<int>(SKGPeriodEdit::LAST) << static_cast<int>(SKGPeriodEdit::SEMESTER) << 2 << QDate(2014, 12, 3) << QDate(2013, 12, 4) << QDate(2014, 12, 3); 0057 QTest::newRow("LAST 2 YEAR") << static_cast<int>(SKGPeriodEdit::LAST) << static_cast<int>(SKGPeriodEdit::YEAR) << 2 << QDate(2014, 12, 3) << QDate(2012, 12, 4) << QDate(2014, 12, 3); 0058 0059 QTest::newRow("TIMELINE 12 DAY") << static_cast<int>(SKGPeriodEdit::TIMELINE) << static_cast<int>(SKGPeriodEdit::DAY) << 12 << QDate(2014, 12, 3) << QDate(2014, 12, 3) << QDate(2014, 12, 3); 0060 QTest::newRow("TIMELINE 12 WEEK") << static_cast<int>(SKGPeriodEdit::TIMELINE) << static_cast<int>(SKGPeriodEdit::WEEK) << 12 << QDate(2014, 12, 3) << QDate(2014, 12, 1) << QDate(2014, 12, 7); 0061 QTest::newRow("TIMELINE 12 MONTH") << static_cast<int>(SKGPeriodEdit::TIMELINE) << static_cast<int>(SKGPeriodEdit::MONTH) << 12 << QDate(2014, 12, 3) << QDate(2014, 12, 1) << QDate(2014, 12, 31); 0062 QTest::newRow("TIMELINE 12 QUARTER") << static_cast<int>(SKGPeriodEdit::TIMELINE) << static_cast<int>(SKGPeriodEdit::QUARTER) << 12 << QDate(2014, 12, 3) << QDate(2014, 10, 1) << QDate(2014, 12, 31); 0063 QTest::newRow("TIMELINE 12 SEMESTER") << static_cast<int>(SKGPeriodEdit::TIMELINE) << static_cast<int>(SKGPeriodEdit::SEMESTER) << 12 << QDate(2014, 12, 3) << QDate(2014, 7, 1) << QDate(2014, 12, 31); 0064 QTest::newRow("TIMELINE 12 YEAR") << static_cast<int>(SKGPeriodEdit::TIMELINE) << static_cast<int>(SKGPeriodEdit::YEAR) << 12 << QDate(2014, 12, 3) << QDate(2014, 1, 1) << QDate(2014, 12, 31); 0065 } 0066 0067 void SKGTESTPeriodEdit::TestPeriods() 0068 { 0069 QFETCH(int, period); 0070 QFETCH(int, interval); 0071 QFETCH(int, value); 0072 QFETCH(QDate, date); 0073 0074 QFETCH(QDate, expectedBeginDate); 0075 QFETCH(QDate, expectedEndDate); 0076 0077 QDate oBeginDate; 0078 QDate oEndDate; 0079 SKGPeriodEdit::getDates(static_cast<SKGPeriodEdit::PeriodMode>(period), static_cast<SKGPeriodEdit::PeriodInterval>(interval), value, oBeginDate, oEndDate, date); 0080 0081 QCOMPARE(oBeginDate, expectedBeginDate); 0082 QCOMPARE(oEndDate, expectedEndDate); 0083 } 0084 0085 QTEST_MAIN(SKGTESTPeriodEdit)