refactor(ads): [PKG-ADS-03] split TypeScript lifecycle and preserve legacy behavior

This commit is contained in:
Harvey Zhao committed 2026-09-12 07:55:55 +08:00
1 parent 069ad4aae1
commit 39e2d4cdfb
37 files changed
+3083 -788

No files matched your search

+17
View File
@@ -0,0 +1,17 @@
import assert from 'node:assert/strict'
import fs from 'node:fs'
import test from 'node:test'
import { archiveFiles, ensureArchive, hash, readMember } from './releases.mjs'
test('Ads historical core archive and selected implementation members remain verified', async () => {
const baseline = JSON.parse(fs.readFileSync(new URL('../baselines/ads-core.json', import.meta.url)))
const ads = JSON.parse(fs.readFileSync(new URL('../baselines/ads-release.json', import.meta.url)))
assert.equal(baseline.release.name, 'artplayer')
assert.equal(baseline.release.version, ads.historicalCore.version)
const archive = await ensureArchive(baseline.release)
assert.deepEqual(archiveFiles(archive), baseline.archiveMembers)
for (const [member, expected] of Object.entries(baseline.release.files))
assert.equal(hash(readMember(archive, member)), expected)
assert.deepEqual(JSON.parse(readMember(archive, 'package/package.json')), baseline.release.manifest)
assert(Object.hasOwn(baseline.release.files, `package/${baseline.release.manifest.main}`))
})