From 005a8026bb424779a146e00cc48621ff1d72b807 Mon Sep 17 00:00:00 2001 From: CptAlanSmith <123112708+CptAlanSmith@users.noreply.github.com> Date: Sat, 23 Sep 2023 19:25:15 +0100 Subject: Testing (#23) * Fixes for building scons * Initial proof of concept auto-testing Shows how we can pull loaded data and display it back * Re-did headless Because hubert insisted it be done like this ;) * Auto-Testing Framework Basics * Requirements Calculations * Fix for messy merge (teach me to use merge tools) * Fixing up misc merge issues to fully reconcile with master changes * Re-added missing getters * Move of testing files due to folder reorgs * Use new accessors + int reading fix --------- Co-authored-by: Hop311 --- src/openvic-simulation/testing/TestScript.cpp | 31 +++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 src/openvic-simulation/testing/TestScript.cpp (limited to 'src/openvic-simulation/testing/TestScript.cpp') diff --git a/src/openvic-simulation/testing/TestScript.cpp b/src/openvic-simulation/testing/TestScript.cpp new file mode 100644 index 0000000..7652fa5 --- /dev/null +++ b/src/openvic-simulation/testing/TestScript.cpp @@ -0,0 +1,31 @@ +#include + +using namespace OpenVic; + +// Getters +std::vector TestScript::get_requirements() { return requirements; } +Requirement TestScript::get_requirement_at_index(int index) { return requirements[index]; } +Requirement TestScript::get_requirement_by_id(std::string id) { + for (int i = 0; i < requirements.size(); i++) { + if (requirements[i].get_id() == id) return requirements[i]; + } + return Requirement("NULL", "NULL", "NULL"); +} +std::vector TestScript::get_passed_requirements() { + std::vector passed_requirements = std::vector(); + for (int i = 0; i < requirements.size(); i++) { + if (requirements[i].get_pass()) passed_requirements.push_back(requirements[i]); + } + return passed_requirements; +} +std::vector TestScript::get_failed_requirements() { + std::vector failed_requirements = std::vector(); + for (int i = 0; i < requirements.size(); i++) { + if (!requirements[i].get_pass()) failed_requirements.push_back(requirements[i]); + } + return failed_requirements; +} + +// Setters +void TestScript::set_requirements(std::vector in_requirements) { requirements = in_requirements; } +void TestScript::add_requirement(Requirement req) { requirements.push_back(req); } -- cgit v1.2.3-56-ga3b1