mirror of
https://git.openapi.site/https://github.com/desirecore/registry.git
synced 2026-10-21 03:13:23 +08:00
* feat(registry): 增加插件贡献与应用依赖的4.2契约 * fix(registry): preserve legacy App manifests for published clients --------- Co-authored-by: yi-ge <6657330+yi-ge@users.noreply.github.com>
18 lines
1.0 KiB
JavaScript
18 lines
1.0 KiB
JavaScript
import test from 'node:test'
|
|
import assert from 'node:assert/strict'
|
|
import { createHash } from 'node:crypto'
|
|
import { readFileSync } from 'node:fs'
|
|
import { findStaticMetrics } from './static-metadata.mjs'
|
|
|
|
test('metrics are rejected without interpreting examples or configuration parameters as analytics', () => {
|
|
assert.deepEqual(findStaticMetrics({ stars: 99, metrics: { downloads: 3 }, installStatus: 'installed' }), ['stars', 'metrics.downloads', 'installStatus'])
|
|
assert.deepEqual(findStaticMetrics({ description: 'downloads files', toolCount: 13, configSchema: { properties: { rating: { type: 'number' } } } }), [])
|
|
})
|
|
|
|
test('Registry 4.2 keeps the exact reviewed client schema identity', () => {
|
|
const version = readFileSync(new URL('../../SCHEMA_VERSION', import.meta.url), 'utf8').trim()
|
|
assert.equal(version, '4.2.0')
|
|
const bytes = readFileSync(new URL('../../schemas/registry-entry.schema.json', import.meta.url))
|
|
assert.equal(createHash('sha256').update(bytes).digest('hex'), 'ea63d6305ae17994e595aea009a131c41300d2b7fdb07ec83cc2c19c37b32038')
|
|
})
|