Error-handling tests
Broken test feeds
Every feed below is intentionally defective. Point a Meta Commerce Manager data source at one to see how the catalog reports the failure. The working feed lives at /feed. Nothing here is cached, so each fetch hits the intended failure.
01 — Malformed XML
Open ↗Not valid XML at all: an unclosed element, a bare & character, and no closing </rss>.
Expected: Feed should fail to parse; zero items ingested, parse error reported.
/test-feeds/01-malformed.xml02 — Unknown tag names
Open ↗Valid RSS with 20 items, but every product field uses a tag name Meta does not recognise (product_code, cost, photo, maker…).
Expected: Either zero products ingested, or ingestion only after manual field mapping rules.
/test-feeds/02-unknown-tags.xml03 — Empty catalogue
Open ↗Valid RSS 2.0 document with zero <item> elements.
Expected: Fetch succeeds, 0 products; existing catalogue items may be marked stale.
/test-feeds/03-empty.xml04 — Correct fields, broken values
Open ↗Ten price spellings, eight availability spellings, condition "Nieuw", HTML in descriptions, a title over 200 characters, a 404 image, an http link, a protocol-relative image.
Expected: Mix of auto-corrections, warnings, and dropped items — the main test for value tolerance.
/test-feeds/04-bad-values.xml05 — Missing & duplicate required fields
Open ↗One item per defect: no id, duplicate id, empty id, no image_link, no link, no title, no price, no description, no brand, no availability, no condition.
Expected: Defective items rejected individually; the remaining valid items should still ingest.
/test-feeds/05-missing-required.xml06 — Wrong content type
Open ↗A perfectly valid feed body served as text/html instead of application/xml.
Expected: Tests whether Meta sniffs the body or refuses the feed on content type alone.
/test-feeds/06-wrong-content-type.xml07 — 404 Not Found
Open ↗The URL always responds 404 with a short HTML body.
Expected: Scheduled fetch fails with a download error; catalogue left unchanged.
/test-feeds/07-not-found.xml08 — 500 Server Error
Open ↗The URL always responds 500.
Expected: Fetch failure and retry behaviour; catalogue left unchanged.
/test-feeds/08-server-error.xml09 — Slow response (~25s)
Open ↗A valid feed that stalls about 25 seconds before the body starts.
Expected: Tests fetch timeout handling on scheduled feeds.
/test-feeds/09-slow.xml10 — Out-of-range values
Open ↗Valid field names, but 200-character ids, a negative quantity, a 0.00 USD price, and two items sharing an id inside one item group.
Expected: Tests field length limits and numeric range validation.
/test-feeds/10-huge-ids.xml