| 123456789101112131415161718192021222324252627282930 |
- import { test } from 'node:test'
- import assert from 'node:assert/strict'
- import path from 'node:path'
- import { fileURLToPath } from 'node:url'
- import { SecretReader } from '../../../src/storage/adapters/SecretReader.js'
- const __dirname = path.dirname(fileURLToPath(import.meta.url))
- const fixtureRoot = path.join(__dirname, '../../fixtures/sample-book')
- test('SecretReader.readBasicInfo 读信息差 front matter', async () => {
- const r = await new SecretReader(fixtureRoot).readBasicInfo('信息差-001')
- assert.equal(r.ok, true)
- assert.equal(r.data.读者知道, false)
- })
- test('SecretReader.readContent 读 ## 内容 段', async () => {
- const r = await new SecretReader(fixtureRoot).readContent('信息差-001')
- assert.equal(r.ok, true)
- assert.ok(r.content.includes('封印邪灵'))
- })
- test('SecretReader 不存在的信息差 → ok=false', async () => {
- const r = await new SecretReader(fixtureRoot).readBasicInfo('信息差-999')
- assert.equal(r.ok, false)
- })
- test('SecretReader.listUnrevealed 无 cache 时返回空数组(不崩)', async () => {
- const rows = await new SecretReader(fixtureRoot).listUnrevealed()
- assert.deepEqual(rows, [])
- })
|