MCPcopy Create free account
hub / github.com/astercloud/aster / TestPreferenceManager_ListPreferences

Function TestPreferenceManager_ListPreferences

pkg/memory/preference_test.go:90–125  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

88}
89
90func TestPreferenceManager_ListPreferences(t *testing.T) {
91 manager := NewPreferenceManager(DefaultPreferenceManagerConfig())
92
93 // 添加多个偏好
94 prefs := []*Preference{
95 {UserID: "user-1", Category: CategoryUI, Key: "theme", Value: "dark", Strength: 0.8, Confidence: 0.9},
96 {UserID: "user-1", Category: CategoryUI, Key: "font", Value: "monospace", Strength: 0.7, Confidence: 0.8},
97 {UserID: "user-1", Category: CategoryLanguage, Key: "language", Value: "zh", Strength: 0.9, Confidence: 1.0},
98 }
99
100 for _, pref := range prefs {
101 if err := manager.AddPreference(context.Background(), pref); err != nil {
102 t.Fatalf("AddPreference failed: %v", err)
103 }
104 }
105
106 // 列出所有偏好
107 all, err := manager.ListPreferences(context.Background(), "user-1", "")
108 if err != nil {
109 t.Fatalf("ListPreferences failed: %v", err)
110 }
111
112 if len(all) != 3 {
113 t.Errorf("ListPreferences returned %d preferences, want 3", len(all))
114 }
115
116 // 列出特定类别的偏好
117 uiPrefs, err := manager.ListPreferences(context.Background(), "user-1", CategoryUI)
118 if err != nil {
119 t.Fatalf("ListPreferences failed: %v", err)
120 }
121
122 if len(uiPrefs) != 2 {
123 t.Errorf("ListPreferences returned %d UI preferences, want 2", len(uiPrefs))
124 }
125}
126
127func TestPreferenceManager_UpdatePreference(t *testing.T) {
128 manager := NewPreferenceManager(DefaultPreferenceManagerConfig())

Callers

nothing calls this directly

Calls 4

AddPreferenceMethod · 0.95
ListPreferencesMethod · 0.95
NewPreferenceManagerFunction · 0.85

Tested by

no test coverage detected