File indexing completed on 2024-06-09 05:02:02

0001 /*
0002     SPDX-FileCopyrightText: 2007-2010 Alvaro Soliverez <asoliverez@gmail.com>
0003     SPDX-License-Identifier: GPL-2.0-or-later
0004 */
0005 
0006 #ifndef MYMONEYFORECASTTEST_H
0007 #define MYMONEYFORECASTTEST_H
0008 
0009 #include <QObject>
0010 
0011 #define KMM_MYMONEY_UNIT_TESTABLE friend class MyMoneyForecastTest;
0012 
0013 #include "mymoneyfile.h"
0014 #include "mymoneymoney.h"
0015 
0016 #include "mymoneyforecast.h"
0017 
0018 class MyMoneyForecastTest : public QObject
0019 {
0020     Q_OBJECT
0021 public:
0022     MyMoneyForecastTest();
0023 
0024 private Q_SLOTS:
0025     void init();
0026     void cleanup();
0027     void testEmptyConstructor();
0028     void testDoForecast();
0029     void testDoForecastInit();
0030     void testGetForecastAccountList();
0031     void testCalculateAccountTrend();
0032     void testGetForecastBalance();
0033     void testIsForecastAccount();
0034     void testDoFutureScheduledForecast();
0035     void testDaysToMinimumBalance();
0036     void testDaysToZeroBalance();
0037     void testScheduleForecast();
0038     void testSkipOpeningDate();
0039     void testAccountMinimumBalanceDateList();
0040     void testAccountMaximumBalanceDateList();
0041     void testAccountAverageBalance();
0042     void testBeginForecastDate();
0043     void testHistoryDays();
0044     void testCreateBudget();
0045     void testLinearRegression();
0046 
0047 protected:
0048     MyMoneyForecast *m;
0049 
0050 private:
0051     MyMoneyStorageMgr* storage;
0052     MyMoneyFile* file;
0053 
0054     MyMoneyMoney moT1;
0055     MyMoneyMoney moT2;
0056     MyMoneyMoney moT3;
0057     MyMoneyMoney moT4;
0058     MyMoneyMoney moT5;
0059 };
0060 
0061 #endif