import test from 'node:test' import assert from 'node:assert/strict' import { SCAN_BROADCAST_ACTION, SCAN_BROADCAST_EXTRA, isDuplicateScan, normalizeScanValue, resetScanDeduplication } from '../utils/scan-broadcast.js' test('scanner uses the confirmed PDA broadcast contract', () => { assert.equal(SCAN_BROADCAST_ACTION, 'android.intent.action.SCANRESULT') assert.equal(SCAN_BROADCAST_EXTRA, 'value') assert.equal(normalizeScanValue(' EL-38201\r\n'), 'EL-38201') assert.equal(normalizeScanValue(null), '') }) test('scanner drops only immediate duplicate broadcasts', () => { resetScanDeduplication() assert.equal(isDuplicateScan('EL-38201', 1000), false) assert.equal(isDuplicateScan('EL-38201', 1050), true) assert.equal(isDuplicateScan('EL-38201', 1100), false) assert.equal(isDuplicateScan('EL-38202', 1110), false) })