14 std::ostream& output) {
16 output <<
"✅ Replay succeeded\n";
18 output <<
"❌ Replay failed: " << result.
message <<
"\n";
25 output <<
"Assertions:\n";
26 for (std::size_t i = 0; i < result.
assertions.size(); ++i) {
28 output <<
" " << (i + 1) <<
". " << (assertion.passed ?
"✓" :
"✗") <<
" "
29 << assertion.description <<
"\n";
30 if (!assertion.expected_value.empty() ||
31 !assertion.actual_value.empty()) {
32 output <<
" Expected: " << assertion.expected_value <<
"\n";
33 output <<
" Actual: " << assertion.actual_value <<
"\n";
35 if (!assertion.error_message.empty()) {
36 output <<
" Error: " << assertion.error_message <<
"\n";
40 if (!result.
logs.empty()) {
42 for (
const auto& log : result.
logs) {
43 output <<
" " << log <<
"\n";