import assert from 'node:assert/strict' import { readFileSync } from 'node:fs' import test from 'node:test' const source = readFileSync(new URL('inbound-measurement.mjs', import.meta.url), 'utf8') test('measurement acceptance scans the stable box code frozen by first print', () => { assert.match(source, /const boxCode = `\$\{inboundCode\}#\$\{originalPackageCount\}-1`/) assert.doesNotMatch(source, /#V\d+#/) }) test('reprint and Mojia scan share the same frozen box code variable', () => { assert.match(source, /重复整单打印复用已冻结箱码映射[\s\S]*boxCode=\$\{boxCode\}/) assert.match(source, /const firstScanResponse = await multipartRequest[\s\S]*boxCode, \.\.\.firstDimensions/) }) test('measurement submission confirms weight evidence before submit', () => { assert.match(source, /files\/measurements\/\$\{tenantId\}\/\$\{inboundId\}/) assert.match(source, /\/weight-results\?\$\{query\(tenantId\)\}/) assert.match(source, /\/weight-results\/\$\{created\.id\}\/confirm\?\$\{query\(tenantId\)\}/) assert.match(source, /createConfirmedWeightEvidence[\s\S]*\/measurement\/submit/) }) test('measurement fixture derives pallet resources from confirmed image count', () => { assert.match(source, /palletCount: WEIGHING_IMAGE_COUNT/) assert.doesNotMatch(source, /Math\.ceil\(Number\(totalVolumeCbm\)/) assert.doesNotMatch(source, /Math\.ceil\(totalVolume \/ DEFAULT_PALLET_CAPACITY_CBM\)/) })