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 +++++
 3 files changed, 91 insertions(+), 78 deletions(-)
 create mode 100644 src/test.cpp
 create mode 100644 src/test.h

(limited to 'src')

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 <iostream>
 #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 <time.h>
+#include <string.h>
+#include <iostream>
+
+void test();
-- 
cgit v1.2.1