| 12345678910111213141516171819202122 |
- import fs from 'node:fs'
- import path from 'node:path'
- import pino from 'pino'
- import { describe, expect, it } from 'vitest'
- import { createApp } from '../src/app'
- import { communitySkillsDir, config, customSkillsDir } from '../src/config'
- describe('技能生效目录迁移', () => {
- it('启动时把 data/ 下的旧目录搬到 managed-skills/,内容不变', () => {
- const old = path.join(config.dataDir, 'data', 'community-skills', 'skills', 'demo')
- fs.mkdirSync(old, { recursive: true })
- fs.writeFileSync(path.join(old, 'SKILL.md'), '---\nname: demo\n---\n')
- fs.mkdirSync(path.join(config.dataDir, 'data', 'custom-skills', 'skills'), { recursive: true })
- createApp(pino({ level: 'silent' }), { providers: {} })
- expect(fs.existsSync(path.join(config.dataDir, 'data', 'community-skills'))).toBe(false)
- expect(fs.existsSync(path.join(config.dataDir, 'data', 'custom-skills'))).toBe(false)
- expect(fs.readFileSync(path.join(communitySkillsDir(), 'skills', 'demo', 'SKILL.md'), 'utf8')).toContain('name: demo')
- expect(customSkillsDir()).toBe(path.join(config.dataDir, 'managed-skills', 'custom'))
- })
- })
|