test(tools): add unit tests for error handling functions
* Implement tests for error functions like errRequiredField, errInvalidField, and errEntityNotFound. * Ensure proper metadata is returned for various error scenarios. * Validate error handling in CRM, Files, and other tools. * Introduce tests for parsing stored file IDs and UUIDs. * Enhance coverage for helper functions related to project resolution and session management.
This commit is contained in:
30
internal/mcpserver/eventstore_test.go
Normal file
30
internal/mcpserver/eventstore_test.go
Normal file
@@ -0,0 +1,30 @@
|
||||
package mcpserver
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/google/uuid"
|
||||
"github.com/modelcontextprotocol/go-sdk/mcp"
|
||||
|
||||
"git.warky.dev/wdevs/amcs/internal/session"
|
||||
)
|
||||
|
||||
func TestCleanupEventStoreSessionClosedClearsActiveProject(t *testing.T) {
|
||||
activeProjects := session.NewActiveProjects()
|
||||
activeProjects.Set("session-1", uuid.New())
|
||||
|
||||
store := newCleanupEventStore(mcp.NewMemoryEventStore(nil), activeProjects.Clear)
|
||||
|
||||
if _, ok := activeProjects.Get("session-1"); !ok {
|
||||
t.Fatal("active project missing before SessionClosed")
|
||||
}
|
||||
|
||||
if err := store.SessionClosed(context.Background(), "session-1"); err != nil {
|
||||
t.Fatalf("SessionClosed() error = %v", err)
|
||||
}
|
||||
|
||||
if _, ok := activeProjects.Get("session-1"); ok {
|
||||
t.Fatal("active project still present after SessionClosed")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user