← back to Dw Add Sellable Variant Tk10902
tk10875-cost-source-map/test-cost-source-map.mjs
18 lines
#!/usr/bin/env node
import assert from 'node:assert/strict';
import { readFileSync } from 'node:fs';
const report = JSON.parse(readFileSync(new URL('./cost-source-map.json', import.meta.url)));
assert.equal(report.ticket, 'TK-10875');
assert.equal(report.mode, 'local-mirror-read-only');
assert.ok(report.active_unbuyable > 20000);
assert.ok(!report.cost_semantics.accepted.some(x => /retail|msrp|^price$/.test(x)));
assert.ok(report.cost_semantics.rejected.includes('price_retail'));
for (const source of report.sources) {
assert.match(source.table, /^[a-z_][a-z0-9_]*$/i);
assert.ok(report.cost_semantics.accepted.includes(source.cost_column));
assert.ok(source.positive_cost_rows > 0);
assert.ok(source.exact_matches.every(hit => hit.products > 0 && hit.vendor));
}
console.log(`PASS: ${report.sources.length} exact cost sources validated; retail-only columns excluded`);