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

Function TestNewLogicMemoryMiddleware

pkg/middleware/logic_memory_test.go:16–54  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

14)
15
16func TestNewLogicMemoryMiddleware(t *testing.T) {
17 store := logic.NewInMemoryStore()
18 manager, err := logic.NewManager(&logic.ManagerConfig{Store: store})
19 require.NoError(t, err)
20
21 t.Run("valid config", func(t *testing.T) {
22 mw, err := NewLogicMemoryMiddleware(&LogicMemoryMiddlewareConfig{
23 Manager: manager,
24 EnableCapture: true,
25 EnableInjection: true,
26 })
27 require.NoError(t, err)
28 require.NotNil(t, mw)
29 assert.Equal(t, "logic_memory", mw.Name())
30 })
31
32 t.Run("nil config", func(t *testing.T) {
33 _, err := NewLogicMemoryMiddleware(nil)
34 assert.Error(t, err)
35 assert.Contains(t, err.Error(), "config is required")
36 })
37
38 t.Run("nil manager", func(t *testing.T) {
39 _, err := NewLogicMemoryMiddleware(&LogicMemoryMiddlewareConfig{})
40 assert.Error(t, err)
41 assert.Contains(t, err.Error(), "manager is required")
42 })
43
44 t.Run("default values", func(t *testing.T) {
45 mw, err := NewLogicMemoryMiddleware(&LogicMemoryMiddlewareConfig{
46 Manager: manager,
47 })
48 require.NoError(t, err)
49 assert.Equal(t, 5, mw.config.MaxMemories)
50 assert.Equal(t, 0.6, mw.config.MinConfidence)
51 assert.Equal(t, 7, mw.config.Priority)
52 assert.Equal(t, "system_prompt_end", mw.config.InjectionPoint)
53 })
54}
55
56func TestLogicMemoryMiddleware_WrapModelCall(t *testing.T) {
57 ctx := context.Background()

Callers

nothing calls this directly

Calls 6

NewInMemoryStoreFunction · 0.92
NewManagerFunction · 0.92
NewLogicMemoryMiddlewareFunction · 0.85
NameMethod · 0.65
ErrorMethod · 0.65
RunMethod · 0.45

Tested by

no test coverage detected