Summary
Add repeatable automated coverage for the frontend-only comparison pipeline so ranking, normalization, and filtering regressions are caught before they ship.
Why
Recent fixes around condition bucketing and cross-country location matching showed that key comparison logic can regress silently without fixtures.
Scope
- choose a lightweight test approach suitable for this repo
- add deterministic fixtures for Facebook listing inputs and eBay result inputs
- cover
normalizeLocationText, query building, match confidence, ranking, and filter behavior
- add regression cases for placeholder prices,
renewed vs new, auction-only handling, and cross-country location matches
- document how to run the tests locally
Acceptance criteria
- repeatable test fixtures live in the repo
- core comparison helpers have regression coverage
- at least one documented command exists for running the checks locally
Summary
Add repeatable automated coverage for the frontend-only comparison pipeline so ranking, normalization, and filtering regressions are caught before they ship.
Why
Recent fixes around condition bucketing and cross-country location matching showed that key comparison logic can regress silently without fixtures.
Scope
normalizeLocationText, query building, match confidence, ranking, and filter behaviorrenewedvsnew, auction-only handling, and cross-country location matchesAcceptance criteria