#pragma once #include #include class TestData; struct TestRunOutput { TestRunOutput(std::string id_) : id(std::move(id_)) {} std::string id; bool passed = false; std::string text; std::string expression; std::string serialized; }; class TestStats { public: std::size_t testCount() const { return passed.size() + failed.size() + errored.size() + ignorePassed.size() + ignoreFailed.size(); } std::vector passed; std::vector failed; std::vector errored; std::vector ignorePassed; std::vector ignoreFailed; std::vector ids; }; TestRunOutput runExpressionTest(TestData&, const std::string& rootPath, const std::string& id);