#pragma once #include #include #include namespace grove { class TestReporter { public: explicit TestReporter(const std::string& scenarioName); void addMetric(const std::string& name, float value); void addAssertion(const std::string& name, bool passed); void printFinalReport() const; int getExitCode() const; // 0 = pass, 1 = fail private: std::string scenarioName; std::map metrics; std::vector> assertions; }; } // namespace grove