2026-05-09 08:02:01 +00:00
|
|
|
import assert from 'node:assert/strict'
|
|
|
|
|
|
2026-05-22 16:00:19 +08:00
|
|
|
import {
|
|
|
|
|
resolveInitialKnowledgeFolder,
|
|
|
|
|
resolveKnowledgeFolderIcon
|
|
|
|
|
} from '../src/views/scripts/knowledgeFolderSelection.js'
|
2026-05-09 08:02:01 +00:00
|
|
|
|
|
|
|
|
function testFallsBackToFirstFolderWhenCurrentFolderDoesNotExist() {
|
|
|
|
|
const folders = [{ name: '财务知识库' }, { name: '制度政策' }, { name: '差旅规范' }]
|
|
|
|
|
|
|
|
|
|
assert.equal(resolveInitialKnowledgeFolder(folders, '差旅规范(旧值)'), '财务知识库')
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function testKeepsCurrentFolderWhenItStillExists() {
|
|
|
|
|
const folders = [{ name: '财务知识库' }, { name: '制度政策' }, { name: '差旅规范' }]
|
|
|
|
|
|
|
|
|
|
assert.equal(resolveInitialKnowledgeFolder(folders, '制度政策'), '制度政策')
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function testReturnsEmptyStringWhenFoldersAreEmpty() {
|
|
|
|
|
assert.equal(resolveInitialKnowledgeFolder([], '差旅规范'), '')
|
|
|
|
|
}
|
|
|
|
|
|
2026-05-22 16:00:19 +08:00
|
|
|
function testUsesOpenIconForActiveFolderOnly() {
|
|
|
|
|
assert.equal(
|
|
|
|
|
resolveKnowledgeFolderIcon({ name: '差旅规范', icon: 'mdi mdi-folder' }, '差旅规范'),
|
|
|
|
|
'mdi mdi-folder-open'
|
|
|
|
|
)
|
|
|
|
|
assert.equal(
|
|
|
|
|
resolveKnowledgeFolderIcon({ name: '制度政策', icon: 'mdi mdi-folder-open' }, '差旅规范'),
|
|
|
|
|
'mdi mdi-folder'
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
|
2026-05-09 08:02:01 +00:00
|
|
|
function run() {
|
|
|
|
|
testFallsBackToFirstFolderWhenCurrentFolderDoesNotExist()
|
|
|
|
|
testKeepsCurrentFolderWhenItStillExists()
|
|
|
|
|
testReturnsEmptyStringWhenFoldersAreEmpty()
|
2026-05-22 16:00:19 +08:00
|
|
|
testUsesOpenIconForActiveFolderOnly()
|
2026-05-09 08:02:01 +00:00
|
|
|
console.log('knowledge folder selection tests passed')
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
run()
|