From 0163ec13c0e4efe890f8c79a838a26acffa0088e Mon Sep 17 00:00:00 2001 From: SanJacobs Date: Tue, 12 Jul 2022 23:05:27 +0200 Subject: New, cleaner testing structure --- src/main.cpp | 80 ++------------------------------------------------------- src/test.cpp | 83 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/test.h | 6 +++++ test.sh | 12 +++++++++ 4 files changed, 103 insertions(+), 78 deletions(-) create mode 100644 src/test.cpp create mode 100644 src/test.h create mode 100755 test.sh diff --git a/src/main.cpp b/src/main.cpp index 99e5647..2af0702 100755 --- a/src/main.cpp +++ b/src/main.cpp @@ -22,89 +22,13 @@ along with this program. If not, see https://www.gnu.org/licenses/ #include #include "time.h" +#include "test.h" int main(int argc, char* argv[]) { if(argc > 1){ if(std::string(argv[1])=="test") { - moment calltime{30, 8, 27, 11, 2010}; - moment wraptime{30, 16, 27, 11, 2010}; - timeblock workday{calltime, wraptime}; - - std::cout << "\n\n --- TIME UNITS TEST ---\n\n"; - std::cout << "Calltime: " << timeprint(calltime) << std::endl; - std::cout << "Wraptime: " << timeprint(wraptime) << std::endl; - - std::cout << "\nWorkday:\n"; - std::cout << timeprint(workday) << std::endl; - - - - std::cout << "\n\n --- TIME MATH TEST ---\n\n"; - - std::cout << "Difference between calltime and wraptime:\n"; - std::cout << (calltime-wraptime) << std::endl; - std::cout << "Other way around, should show same result:\n"; - std::cout << (calltime-wraptime) << std::endl; - std::cout << "As method on workday:\n"; - std::cout << (workday.hourcount()) << std::endl; - - std::cout << "\nSplitting workday into workday and second_half...\n"; - moment splitpoint{0, 12, 27, 11, 2010}; - timeblock first_half{timesplit(workday, splitpoint)}; - - std::cout << "\nSplitpoint: " << timeprint(splitpoint) << std::endl; - std::cout << "\nfirst_half:\n"; - std::cout << timeprint(first_half) << std::endl; - std::cout << "\nWorkday:\n"; - std::cout << timeprint(workday) << std::endl; - - std::cout << "\nSplitting second_half at erronious point...\n"; - moment erronious_splitpoint{0, 14, 27, 11, 2010}; - std::cout << timeprint(timesplit(first_half, erronious_splitpoint)) << "\n"; - - - - std::cout << "\n\n --- TIME WINDING TEST ---\n\n"; - - moment testtime{30, 8, 25, 2, 2012}; - std::cout << "Testtime: " << timeprint(testtime) << std::endl; - - - std::cout << "\nForwarding 45 minutes...\n"; - wind(testtime, 45, 0, 0); - std::cout << "Testtime: " << timeprint(testtime) << std::endl; - - std::cout << "\nRewinding 45 minutes...\n"; - wind(testtime, -45, 0, 0); - std::cout << "Testtime: " << timeprint(testtime) << std::endl; - - - std::cout << "\nForwarding 20 hours...\n"; - wind(testtime, 0, 20, 0); - std::cout << "Testtime: " << timeprint(testtime) << std::endl; - - std::cout << "\nRewinding 20 hours...\n"; - wind(testtime, 0, -20, 0); - std::cout << "Testtime: " << timeprint(testtime) << std::endl; - - - std::cout << "\nForwarding 10 days...\n"; - wind(testtime, 0, 0, 10); - std::cout << "Testtime: " << timeprint(testtime) << std::endl; - - std::cout << "\nRewinding 10 days...\n"; - wind(testtime, 0, 0, -10); - std::cout << "Testtime: " << timeprint(testtime) << std::endl; - - - - std::cout << "\n\n --- TIME INPUT TEST ---\n\n"; - - moment inputmoment = timeinput(); - std::cout << "Time reveived: " << timeprint(inputmoment) << std::endl; - moment inputmoment2 = timeinput(2012, 11, 26); - std::cout << "Time reveived: " << timeprint(inputmoment2) << std::endl; + test(); // Test time-stuff } } else { std::cout << "satscalc (C++ Edition)\n"; diff --git a/src/test.cpp b/src/test.cpp new file mode 100644 index 0000000..3d6d78b --- /dev/null +++ b/src/test.cpp @@ -0,0 +1,83 @@ +#include "test.h" +#include "time.h" + +void test(){ + moment calltime{30, 8, 27, 11, 2010}; + moment wraptime{30, 16, 27, 11, 2010}; + timeblock workday{calltime, wraptime}; + + std::cout << "\n\n --- TIME UNITS TEST ---\n\n"; + std::cout << "Calltime: " << timeprint(calltime) << std::endl; + std::cout << "Wraptime: " << timeprint(wraptime) << std::endl; + + std::cout << "\nWorkday:\n"; + std::cout << timeprint(workday) << std::endl; + + + + std::cout << "\n\n --- TIME MATH TEST ---\n\n"; + + std::cout << "Difference between calltime and wraptime:\n"; + std::cout << (calltime-wraptime) << std::endl; + std::cout << "Other way around, should show same result:\n"; + std::cout << (calltime-wraptime) << std::endl; + std::cout << "As method on workday:\n"; + std::cout << (workday.hourcount()) << std::endl; + + std::cout << "\nSplitting workday into workday and second_half...\n"; + moment splitpoint{0, 12, 27, 11, 2010}; + timeblock first_half{timesplit(workday, splitpoint)}; + + std::cout << "\nSplitpoint: " << timeprint(splitpoint) << std::endl; + std::cout << "\nfirst_half:\n"; + std::cout << timeprint(first_half) << std::endl; + std::cout << "\nWorkday:\n"; + std::cout << timeprint(workday) << std::endl; + + std::cout << "\nSplitting second_half at erronious point...\n"; + moment erronious_splitpoint{0, 14, 27, 11, 2010}; + std::cout << timeprint(timesplit(first_half, erronious_splitpoint)) << "\n"; + + + + std::cout << "\n\n --- TIME WINDING TEST ---\n\n"; + + moment testtime{30, 8, 25, 2, 2012}; + std::cout << "Testtime: " << timeprint(testtime) << std::endl; + + + std::cout << "\nForwarding 45 minutes...\n"; + wind(testtime, 45, 0, 0); + std::cout << "Testtime: " << timeprint(testtime) << std::endl; + + std::cout << "\nRewinding 45 minutes...\n"; + wind(testtime, -45, 0, 0); + std::cout << "Testtime: " << timeprint(testtime) << std::endl; + + + std::cout << "\nForwarding 20 hours...\n"; + wind(testtime, 0, 20, 0); + std::cout << "Testtime: " << timeprint(testtime) << std::endl; + + std::cout << "\nRewinding 20 hours...\n"; + wind(testtime, 0, -20, 0); + std::cout << "Testtime: " << timeprint(testtime) << std::endl; + + + std::cout << "\nForwarding 10 days...\n"; + wind(testtime, 0, 0, 10); + std::cout << "Testtime: " << timeprint(testtime) << std::endl; + + std::cout << "\nRewinding 10 days...\n"; + wind(testtime, 0, 0, -10); + std::cout << "Testtime: " << timeprint(testtime) << std::endl; + + + + std::cout << "\n\n --- TIME INPUT TEST ---\n\n"; + + moment inputmoment = timeinput(); + std::cout << "Time reveived: " << timeprint(inputmoment) << std::endl; + moment inputmoment2 = timeinput(2012, 11, 26); + std::cout << "Time reveived: " << timeprint(inputmoment2) << std::endl; +} diff --git a/src/test.h b/src/test.h new file mode 100644 index 0000000..bf54737 --- /dev/null +++ b/src/test.h @@ -0,0 +1,6 @@ +#pragma once +#include +#include +#include + +void test(); diff --git a/test.sh b/test.sh new file mode 100755 index 0000000..3a05bbd --- /dev/null +++ b/test.sh @@ -0,0 +1,12 @@ +./a.out <