← back to Sample Followup Sweep
test/stamp-aliases.test.js
22 lines
// TK-12351: stamp_aliases map extra recipient addresses to a vendor for STAMPING ONLY.
const assert = require('assert');
const fs = require('fs'), path = require('path');
(async () => {
const core = await import('../scripts/sent-stamp-core.mjs');
const fleet = [{ slug: 'wq', vid: 'WQ' }];
const contacts = { wq: { sample_email: 'orders@wallquest.com', stamp_aliases: ['contract@wallquest.com'] } };
const map = core.buildEmailVid(fleet, contacts);
assert.deepStrictEqual(core.vidsForRecipient(map, 'Contract CS <contract@wallquest.com>'), ['WQ'], 'alias must map to WQ');
assert.deepStrictEqual(core.vidsForRecipient(map, 'orders@wallquest.com'), ['WQ'], 'primary still maps');
assert.deepStrictEqual(core.vidsForRecipient(map, 'nobody@x.com'), [], 'unknown stays unmapped');
// send routing must never read stamp_aliases: only the stamp core may reference it.
const offenders = [];
for (const dir of ['lib', 'bin', 'scripts']) for (const f of fs.readdirSync(dir)) {
if (f === 'sent-stamp-core.mjs' || !/\.(m?js|cjs)$/.test(f)) continue;
if (fs.readFileSync(path.join(dir, f), 'utf8').includes('stamp_aliases')) offenders.push(dir + '/' + f);
}
if (fs.readFileSync('server.js', 'utf8').includes('stamp_aliases')) offenders.push('server.js');
assert.deepStrictEqual(offenders, [], 'stamp_aliases leaked into non-stamp code: ' + offenders);
console.log('stamp-aliases: ALL PASS');
})().catch(e => { console.error('FAIL:', e.message); process.exit(1); });