24 lines
874 B
JavaScript
24 lines
874 B
JavaScript
import test from 'node:test';
|
|
import assert from 'node:assert/strict';
|
|
|
|
import { requireMkhFreshContract } from '../src/utils/mkhFreshContract.js';
|
|
|
|
test('MKH fresh contract accepts a backend-confirmed live refresh', () => {
|
|
const snapshot = { freshDataContractVersion: 1, freshDataApplied: true };
|
|
assert.equal(requireMkhFreshContract(snapshot, { requireApplied: true }), snapshot);
|
|
});
|
|
|
|
test('MKH fresh contract rejects an outdated local backend instead of showing stale stock', () => {
|
|
assert.throws(
|
|
() => requireMkhFreshContract({ rows: [{ stock: 4 }] }, { requireApplied: true }),
|
|
/本地后端版本过旧/
|
|
);
|
|
});
|
|
|
|
test('MKH fresh contract requires explicit refresh completion for fresh requests', () => {
|
|
assert.throws(
|
|
() => requireMkhFreshContract({ freshDataContractVersion: 1 }, { requireApplied: true }),
|
|
/未确认已重读/
|
|
);
|
|
});
|