Parent
Part of #5 (Phase 3: Implement pattern matching).
Background
This integration test exercises the full pattern-matching pipeline with a real-world scenario: parsing a comma-separated line into fields by iterating over characters and matching on each one. It combines for-in iteration, match on char, accumulation into a string, and Vec construction — validating that all Phase 3 features compose correctly.
Spec reference: docs/design/spec.md §5 · Crates: paco-match, paco-eval
What already exists
compiler/paco-match/src/lib.rs — full exhaustiveness checker.
compiler/paco-eval/src/lib.rs — full interpreter including for, match, and string ops.
compiler/paco-test-harness/src/lib.rs — golden test harness.
Scope
- Create
tests/conformance/phase_03/csv_parser/input.paco — a parse_csv(line: string) -> Vec<string> function that iterates characters, splits on ,, and returns fields; main calls it on a sample line and prints each field.
- Create
tests/conformance/phase_03/csv_parser/expected.stdout with each field on its own line.
- Create
tests/conformance/phase_03/csv_parser/flags.toml with kind = "run" and feature_min = 3.
Acceptance Criteria
Key files
tests/conformance/phase_03/csv_parser/ — new test directory
compiler/paco-eval/src/lib.rs — character iteration and string accumulation
compiler/paco-driver/tests/conformance.rs — conformance runner
Parent
Part of #5 (Phase 3: Implement pattern matching).
Background
This integration test exercises the full pattern-matching pipeline with a real-world scenario: parsing a comma-separated line into fields by iterating over characters and matching on each one. It combines
for-in iteration,matchonchar, accumulation into astring, andVecconstruction — validating that all Phase 3 features compose correctly.Spec reference:
docs/design/spec.md §5· Crates:paco-match,paco-evalWhat already exists
compiler/paco-match/src/lib.rs— full exhaustiveness checker.compiler/paco-eval/src/lib.rs— full interpreter includingfor,match, and string ops.compiler/paco-test-harness/src/lib.rs— golden test harness.Scope
tests/conformance/phase_03/csv_parser/input.paco— aparse_csv(line: string) -> Vec<string>function that iterates characters, splits on,, and returns fields;maincalls it on a sample line and prints each field.tests/conformance/phase_03/csv_parser/expected.stdoutwith each field on its own line.tests/conformance/phase_03/csv_parser/flags.tomlwithkind = "run"andfeature_min = 3.Acceptance Criteria
expected.stdoutbyte-for-byte.Key files
tests/conformance/phase_03/csv_parser/— new test directorycompiler/paco-eval/src/lib.rs— character iteration and string accumulationcompiler/paco-driver/tests/conformance.rs— conformance runner