feat(platform): close AI expense value loop
Add tenant-safe value, telemetry, connector, commercial, and production-readiness foundations.
This commit is contained in:
@@ -9,6 +9,10 @@ const topBar = readFileSync(
|
||||
fileURLToPath(new URL('../src/components/layout/TopBar.vue', import.meta.url)),
|
||||
'utf8'
|
||||
)
|
||||
const topBarOverviewRange = readFileSync(
|
||||
fileURLToPath(new URL('../src/components/layout/useTopBarOverviewRange.js', import.meta.url)),
|
||||
'utf8'
|
||||
)
|
||||
const overviewView = readFileSync(
|
||||
fileURLToPath(new URL('../src/views/OverviewView.vue', import.meta.url)),
|
||||
'utf8'
|
||||
@@ -62,7 +66,10 @@ test('digital employee dashboard normalizes backend payload fields', () => {
|
||||
})
|
||||
|
||||
test('digital employee dashboard is wired into overview dashboard switch', () => {
|
||||
assert.match(topBar, /label: '数字员工看板', value: 'digitalEmployee'/)
|
||||
assert.match(topBar, /import \{ useTopBarOverviewRange \} from '\.\/useTopBarOverviewRange\.js'/)
|
||||
assert.match(topBar, /:options="overviewDashboardOptions"/)
|
||||
assert.match(topBar, /useTopBarOverviewRange\(props, emit\)/)
|
||||
assert.match(topBarOverviewRange, /label: '数字员工看板', value: 'digitalEmployee'/)
|
||||
assert.match(overviewView, /<DigitalEmployeeDashboard/)
|
||||
assert.match(overviewView, /activeDashboard === 'digitalEmployee'/)
|
||||
assert.match(overviewView, /digitalEmployeeKpiMetrics/)
|
||||
|
||||
Reference in New Issue
Block a user