- 将事件列表页面逻辑拆分为 EventListTable 组件 - 新增 MeasurementPointDialog 和 VoltageToleranceDialog 弹窗组件 - 重构稳态数据视图为主工作台组件 SteadyTrendWorkbench - 移除不再使用的相别参数和相关逻辑 - 更新事件详情工具函数和接口参数映射 - 优化波形查看功能的数据传递方式 - 修正事件描述字段命名和严重程度解析逻辑
35 lines
1.8 KiB
JavaScript
35 lines
1.8 KiB
JavaScript
/* eslint-env node */
|
|
import fs from 'node:fs'
|
|
import path from 'node:path'
|
|
import { fileURLToPath } from 'node:url'
|
|
|
|
const currentDir = path.dirname(fileURLToPath(import.meta.url))
|
|
const srcRoot = path.resolve(currentDir, '../../../..')
|
|
const staticRouter = fs.readFileSync(path.join(srcRoot, 'routers/modules/staticRouter.ts'), 'utf8')
|
|
const dynamicRouter = fs.readFileSync(path.join(srcRoot, 'routers/modules/dynamicRouter.ts'), 'utf8')
|
|
const authStore = fs.readFileSync(path.join(srcRoot, 'stores/modules/auth.ts'), 'utf8')
|
|
|
|
const expectations = [
|
|
['static router registers /steadyDataView/index', /path:\s*'\/steadyDataView\/index'/],
|
|
['static route name is steadyDataView', /name:\s*'steadyDataView'/],
|
|
['static router imports steadyDataView page', /@\/views\/steady\/steadyDataView\/index\.vue/],
|
|
['dynamic router aliases steady-data-view to steadyDataView', /\/steady\/steady-data-view[\s\S]*\/steady\/steadyDataView/],
|
|
['dynamic router keeps steadyDataView static route from being overwritten', /STATIC_ROUTE_NAMES[\s\S]*'steadyDataView'/],
|
|
['auth normalizes backend steady menu to static steadyDataView entry', /isSteadyDataViewMenu[\s\S]*menu\.path\s*=\s*'\/steadyDataView\/index'/],
|
|
['business menu path resolver handles steadyDataView', /isSteadyDataViewMenu\(menu\)\s*\?\s*'\/steadyDataView\/index'/]
|
|
]
|
|
|
|
const sourceByExpectation = [staticRouter, staticRouter, staticRouter, dynamicRouter, dynamicRouter, authStore, authStore]
|
|
|
|
const failures = expectations.filter(([, pattern], index) => !pattern.test(sourceByExpectation[index]))
|
|
|
|
if (failures.length) {
|
|
console.error('steadyDataView route contract failed:')
|
|
for (const [name] of failures) {
|
|
console.error(`- ${name}`)
|
|
}
|
|
process.exit(1)
|
|
}
|
|
|
|
console.log('steadyDataView route contract passed')
|