Files
docs/悦/货代SAAS平台后台/tests/verify-container-fleet-region-selector.cjs
T
2026-08-21 09:20:26 +08:00

31 lines
1.4 KiB
JavaScript

const assert = require('node:assert/strict');
const fs = require('node:fs');
const path = require('node:path');
const root = path.resolve(__dirname, '..');
const appJs = fs.readFileSync(path.join(root, 'prototype-src', 'app.js'), 'utf8');
function extractBetween(startMarker, endMarker, label) {
const start = appJs.indexOf(startMarker);
assert.notEqual(start, -1, `${label}起始标记不存在`);
const end = appJs.indexOf(endMarker, start + startMarker.length);
assert.notEqual(end, -1, `${label}结束标记不存在`);
return appJs.slice(start, end);
}
const renderCtListSource = extractBetween(
'function renderCtList()',
'function ctUploadDoc(',
'货柜列表渲染片段',
);
assert.ok(/class="ct-fleet-control"/.test(renderCtListSource), '码头车队控件容器缺失');
assert.ok(/class="ct-fleet-sel"/.test(renderCtListSource), '码头车队选择框缺失');
assert.ok(!/class="ct-fleet-region-sel"/.test(renderCtListSource), '码头车队不应保留国内/海外选择框');
assert.ok(!/const regionOpts=/.test(renderCtListSource), '码头车队不应保留国内/海外选项');
assert.ok(!/ctSetFleetRegion/.test(renderCtListSource), '码头车队渲染不应绑定区域变更事件');
assert.ok(!appJs.includes('function ctSetFleetRegion('), '码头车队区域 setter 应移除');
console.log('货柜列表码头车队单选择框验证通过');