Skip to content

chore(fixtures): remove legacy m1-m4 xlsx fixtures and align lab with source-first layout #515

@hhimanshu

Description

@hhimanshu

Background

The conformance test fixtures in crates/core/tests/fixtures/ have accumulated historical structure that no longer reflects how fixtures are produced.

What needs cleaning up

1. Delete m1/, m2/, m3/, m4/ directories

These were the original Excel-based fixtures from the milestone era. The one-shot migration to 5-column TSVs has already run. No conformance test reads these directories today — only migrate_fixtures.rs (itself an ignored, one-shot test) references them.

2. Delete migrate_fixtures.rs

The migration is done. The file itself says "Then delete this file."

3. Move lab/financial.tsvlab/google_sheets/financial.tsv

The lab/ README defines its purpose as GS-specific staging. Now that the canonical fixtures live under google_sheets/, the lab should mirror the same source-first directory convention so it's obvious which source a lab case targets.

4. Update conformance.rs and lab/README.md

  • lab_dir() in conformance.rs scans tests/fixtures/lab/ for .tsv files — it will pick up lab/google_sheets/financial.tsv automatically if we scan recursively, or we update the scan to look in lab/google_sheets/
  • lab/README.md should reflect the new subdirectory structure

What this is NOT

  • No changes to google_sheets/*.tsv canonical files
  • No Excel-related restructuring (deferred)
  • No changes to how the export pipeline works in truecalc-fixtures

Acceptance criteria

  • m1/, m2/, m3/, m4/ directories deleted
  • migrate_fixtures.rs deleted
  • lab/google_sheets/financial.tsv exists (moved from lab/financial.tsv)
  • conformance.rs lab scan finds files under lab/google_sheets/
  • lab/README.md updated to describe source-first subdirectory convention
  • All conformance tests pass (cargo nextest run -p truecalc-core)

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions