import assert from 'node:assert/strict' import { readFileSync } from 'node:fs' import test from 'node:test' const read = (name) => readFileSync(new URL(name, import.meta.url), 'utf8') test('domestic container fixtures use the current workbench detail route', () => { const containerLoading = read('./phase3-container-loading.mjs') assert.ok(containerLoading.includes("context.request('GET', `${CONTAINERS}/domestic/${containerId}`)")) assert.ok(!containerLoading.includes("context.request('GET', `${CONTAINERS}/${containerId}`)")) assert.ok(containerLoading.includes('const containerDetail = containerWorkbench?.container')) assert.ok(containerLoading.includes('const simulationBeforeLink = simulationWorkbench?.container')) assert.ok(containerLoading.includes('`${CONTAINERS}/domestic?scope=ACTIVE&page=1&size=50&keyword=')) assert.ok(containerLoading.includes('records(activeWorkbench).map((item) => item?.container)')) const loading = read('./phase3-loading.mjs') assert.ok(loading.includes("context.request('GET', `/api/platform/v1/containers/domestic/${containerBookingId}`)")) assert.ok(!loading.includes("context.request('GET', `/api/platform/v1/containers/${containerBookingId}`)")) assert.ok(loading.includes('const latestContainer = latestWorkbench?.container')) const crossRegion = read('./phase4-cross-region-events.mjs') const fixtureId = 'encodeURIComponent(id(phase3.containerBookingId))' assert.ok(crossRegion.includes(`/api/platform/v1/containers/domestic/\${${fixtureId}}`)) assert.ok(!crossRegion.includes(`/api/platform/v1/containers/\${${fixtureId}}`)) assert.ok(crossRegion.includes('/api/platform/v1/containers/domestic?scope=HISTORY&containerNo=')) assert.ok(crossRegion.includes('.map((item) => item?.container).filter(')) }) test('service center truck fixture uses the released booking warehouse', () => { const source = read('./service-center-flow.mjs') assert.ok(source.includes('warehouseId: id(booking?.warehouseId)')) assert.ok(!source.includes('context.createdResources?.warehouse?.id')) })