1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
| package vault
|
| import (
| "os"
| "path/filepath"
| "testing"
| )
|
| func TestScanVault(t *testing.T) {
| tmpDir := t.TempDir()
|
| // 创建测试目录结构
| os.MkdirAll(filepath.Join(tmpDir, "FAQ", "充装类"), 0755)
| os.MkdirAll(filepath.Join(tmpDir, "笔记"), 0755)
| os.MkdirAll(filepath.Join(tmpDir, ".obsidian"), 0755) // 应被跳过
|
| os.WriteFile(filepath.Join(tmpDir, "FAQ", "充装类", "001-test.md"), []byte(`---
| title: 测试FAQ
| tags: [充装]
| ---
| 内容
| `), 0644)
|
| os.WriteFile(filepath.Join(tmpDir, "笔记", "note.md"), []byte(`---
| title: 笔记
| ---
| 笔记内容
| `), 0644)
|
| os.WriteFile(filepath.Join(tmpDir, ".obsidian", "config.json"), []byte(`{}`), 0644)
|
| files, err := ScanVault(tmpDir)
| if err != nil {
| t.Fatalf("ScanVault failed: %v", err)
| }
|
| if len(files) != 2 {
| t.Errorf("file count = %d, want 2", len(files))
| }
| }
|
|