1 #pragma once 2 3 #include "rapidcheck/detail/TestListener.h" 4 5 namespace rc { 6 namespace test { 7 8 struct MockTestListener : public rc::detail::TestListener { 9 void onTestCaseFinishedMockTestListener10 onTestCaseFinished(const rc::detail::CaseDescription &description) override { 11 onTestCaseFinishedCount++; 12 if (onTestCaseFinishedCallback) { 13 onTestCaseFinishedCallback(description); 14 } 15 } 16 onShrinkTriedMockTestListener17 void onShrinkTried(const rc::detail::CaseDescription &shrink, 18 bool accepted) override { 19 onShrinkTriedCount++; 20 if (onShrinkTriedCallback) { 21 onShrinkTriedCallback(shrink, accepted); 22 } 23 } 24 onTestFinishedMockTestListener25 void onTestFinished(const rc::detail::TestMetadata &metadata, 26 const rc::detail::TestResult &result) override { 27 onTestFinishedCount++; 28 if (onTestFinishedCallback) { 29 onTestFinishedCallback(metadata, result); 30 } 31 } 32 33 std::function<void(const rc::detail::CaseDescription &)> 34 onTestCaseFinishedCallback; 35 int onTestCaseFinishedCount = 0; 36 37 std::function<void(const rc::detail::CaseDescription &, bool)> 38 onShrinkTriedCallback; 39 int onShrinkTriedCount = 0; 40 41 std::function<void(const rc::detail::TestMetadata &, 42 const rc::detail::TestResult &)> onTestFinishedCallback; 43 int onTestFinishedCount = 0; 44 }; 45 46 } // namespace test 47 } // namespace rc 48