Skip to content

fix: 9 test assertions mismatched with codegen output #40

Description

@noahgift

Summary

9 tests in decy-codegen fail because assertions expect per-macro error messages but production code returns a generic message.

Five-Whys Root Cause

  1. Why CI failing? — 9 test assertions don't match production code output
  2. Why don't they match? — Tests expect "WEXITSTATUS requires status arg" but gen_call_status_macro() returns "/* macro requires status arg */"
  3. Why wrong expectations? — Tests were generated for anticipated behavior that was never implemented (shared helper uses one generic error string)
  4. Why not caught before merge? — Tests committed without running against actual production code (test-last)
  5. Why not fixed already? — Local fixes exist in working tree but were never committed/pushed

Failing Tests

  • class_codegen_tests::test_generate_class_simple_fields
  • codegen_coverage_tests::expr_w{exitstatus,ifexited,ifsignaled,termsig}_no_args
  • expr_codegen_deep2_tests::w{exitstatus,ifexited,ifsignaled,termsig}_no_args_fallback

Fix

Align test assertions with actual production output. Zero production code changes needed.

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions