hololake-system-architecture/product-source/hololake-native-desktop/scripts/subdomain-industry-channel.test.mjs

77 lines
3.7 KiB
JavaScript

import assert from 'node:assert/strict'
import fs from 'node:fs'
import test from 'node:test'
const contract = JSON.parse(
fs.readFileSync(new URL('../contracts/subdomain-industry-routing.json', import.meta.url), 'utf8'),
)
const frontend = fs.readFileSync(new URL('../src/main.tsx', import.meta.url), 'utf8')
const architecture = JSON.parse(
fs.readFileSync(new URL('../../../routing/hololake-current-architecture.json', import.meta.url), 'utf8'),
)
test('human identity numbers and industry routing numbers remain separate', () => {
assert.equal(contract.numbering.human_number_role, 'SUBJECT_IDENTITY_ONLY')
assert.equal(contract.numbering.industry_number_role, 'SYSTEM_ROUTING_ONLY')
assert.equal(contract.numbering.human_number_mutation_by_industry, false)
assert.equal(contract.numbering.industry_order_is_industry_number, false)
assert.equal(contract.numbering.unregistered_industry_number_behavior, 'DISPLAY_PENDING_AND_DO_NOT_INVENT')
})
test('subdomain owns the locked industry order and honest development states', () => {
assert.equal(contract.domain, 'BRANCH_DOMAIN')
assert.equal(contract.entry_surface, 'PUBLIC_MAIN_WORLD_SUBDOMAIN')
assert.deepEqual(
contract.industries.map(({ key, state }) => [key, state]),
[
['WEB_NOVEL', 'IN_DEVELOPMENT'],
['PET', 'PLANNED'],
['EDUCATION', 'IN_DEVELOPMENT'],
],
)
assert.equal(contract.industries[0].industry_number, 'IND-WEBNOVEL-001')
assert.equal(contract.industries[1].industry_number, null)
assert.equal(contract.industries[2].industry_number, null)
})
test('education initialization channel exposes the built-in foundation and development package features', () => {
const education = contract.industries.find((industry) => industry.key === 'EDUCATION')
assert.equal(education.initialization_channel.state, 'DEVELOPMENT_MODULE_MOUNTED')
assert.equal(education.initialization_channel.channel_id, 'GH-EDU-INIT-001')
assert.equal(education.initialization_channel.module_loading, 'HOT_PLUG_ON_DEMAND')
assert.equal(education.initialization_channel.module_slots.length, 5)
assert.deepEqual(
education.initialization_channel.module_slots.map((slot) => slot.state),
[
'DEVELOPMENT_MOUNTED',
'DEVELOPMENT_MOUNTED',
'DEVELOPMENT_MOUNTED',
'DEVELOPMENT_MOUNTED',
'DEVELOPMENT_MOUNTED',
],
)
assert.equal(education.initialization_channel.installed_native_modules, 1)
assert.equal(education.initialization_channel.development_mounted_modules, 1)
assert.equal(education.initialization_channel.installed_open_source_modules, 0)
})
test('the public main world routes through subdomain to web novel and education', () => {
assert.match(frontend, /worldStage === 'subdomainIndustries'/)
assert.match(frontend, /worldStage === 'educationChannel'/)
assert.match(frontend, /worldStage === 'webNovelChannel'/)
assert.match(frontend, /worldStage === 'webNovelWorkspace'/)
assert.match(frontend, /gate\.domain === 'BRANCH_DOMAIN'/)
assert.match(frontend, /光湖分域 · 行业系统/)
assert.match(frontend, /网文与教育正在收拢验收/)
assert.match(frontend, /网文行业初始化频道/)
assert.match(frontend, /教育行业初始化频道/)
assert.match(frontend, /频道基础文档与工作表引擎已内置/)
assert.match(frontend, /验收前不冒充已登记、已发布的商城模块/)
assert.doesNotMatch(frontend, /光湖零域 · 行业系统/)
assert.equal(architecture.current_native_edge.industry_entry_domain, 'BRANCH_DOMAIN')
assert.equal(architecture.current_native_edge.zero_domain_industry_entry, 'ABSENT_BY_CURRENT_CORRECTION')
assert.equal(
architecture.current_native_edge.education_initialization_channel,
'BUILT_IN_CHANNEL_WORKBENCH_WITH_DEVELOPMENT_EDUCATION_MODULE',
)
})