mirror of
https://github.com/zhw2590582/ArtPlayer.git
synced 2026-10-09 03:17:46 -08:00
19 lines
1.2 KiB
JavaScript
19 lines
1.2 KiB
JavaScript
import assert from 'node:assert/strict'
|
|
import fs from 'node:fs'
|
|
// eslint-disable-next-line test/no-import-node-test -- Archive verification uses the repository Node baseline runner.
|
|
import test from 'node:test'
|
|
import { archiveFiles, ensureArchive, hash, readMember } from './releases.mjs'
|
|
|
|
test('VAST historical core 5.1.7 archive matches the release association and all frozen members', async () => {
|
|
const baseline = JSON.parse(fs.readFileSync(new URL('../baselines/vast-core.json', import.meta.url)))
|
|
const vast = JSON.parse(fs.readFileSync(new URL('../baselines/vast-release.json', import.meta.url)))
|
|
assert.equal(baseline.release.name, 'artplayer')
|
|
assert.equal(baseline.release.version, vast.historicalCore.version)
|
|
const archive = await ensureArchive(baseline.release)
|
|
assert.deepEqual(archiveFiles(archive), baseline.archiveMembers)
|
|
assert.deepEqual(baseline.archiveMembers, Object.keys(baseline.release.files).sort())
|
|
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)
|
|
})
|