hololake-system-architecture/product-source/hololake-native-desktop/scripts/foundation.test.mjs

62 lines
2.7 KiB
JavaScript

import assert from 'node:assert/strict'
import fs from 'node:fs'
import path from 'node:path'
import test from 'node:test'
import { fileURLToPath } from 'node:url'
const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..')
const readJson = (relative) => JSON.parse(fs.readFileSync(path.join(root, relative), 'utf8'))
const readText = (relative) => fs.readFileSync(path.join(root, relative), 'utf8')
const foundation = readJson('foundation.json')
const trust = readJson('src-tauri/release-trust.json')
const tauriConfig = readJson('src-tauri/tauri.conf.json')
const capability = readJson('src-tauri/capabilities/default.json')
const broadcast = readJson('contracts/release-broadcast.schema.json')
test('clean Tauri foundation contains no inherited product updater endpoint', () => {
assert.deepEqual(foundation.upstream_product_update_endpoints, [])
assert.deepEqual(trust.endpoints, [])
assert.deepEqual(trust.allowedReleaseHosts, [])
assert.equal(trust.state, 'UNPROVISIONED_FAIL_CLOSED')
assert.equal(trust.publicKey, '')
for (const relative of [
'foundation.json',
'src-tauri/release-trust.json',
'src-tauri/tauri.conf.json',
'src-tauri/src/release_trust.rs',
]) {
const source = readText(relative)
assert.doesNotMatch(source, /refactoringhq|tolaria|outline/i)
}
})
test('release activation remains explicitly human controlled', () => {
assert.equal(trust.automaticCheckOnStartup, false)
assert.equal(trust.automaticDownload, false)
assert.equal(trust.humanOptInInstallRequired, true)
assert.equal(trust.automaticRestart, false)
assert.equal(foundation.automatic_update_check_on_startup, false)
assert.equal(foundation.human_opt_in_download_install_required, true)
assert.equal(foundation.automatic_restart_allowed, false)
})
test('Tauri can emit signed updater artifacts without exposing updater IPC', () => {
assert.equal(tauriConfig.bundle.createUpdaterArtifacts, true)
assert.deepEqual(capability.permissions, ['core:default'])
assert.equal(capability.permissions.includes('updater:default'), false)
})
test('broadcast remains Tauri-compatible and carries HoloLake human metadata', () => {
const platform = broadcast.properties.platforms.additionalProperties
assert.equal(platform.required.includes('signature'), true)
assert.equal(platform.required.includes('url'), true)
assert.equal(broadcast.required.includes('pub_date'), true)
assert.equal(broadcast.required.includes('publishedAt'), false)
assert.equal(broadcast.required.includes('notes'), true)
assert.equal(broadcast.required.includes('hololake'), true)
assert.equal(
broadcast.properties.hololake.properties.restart.properties.automaticAllowed.const,
false,
)
})