* Add tools for creating, retrieving, updating, and deleting thoughts. * Implement project management tools for creating and listing projects. * Introduce linking functionality between thoughts. * Add search and recall capabilities for thoughts based on semantic queries. * Implement statistics and summarization tools for thought analysis. * Create database migrations for thoughts, projects, and links. * Add helper functions for UUID parsing and project resolution.
28 lines
568 B
Go
28 lines
568 B
Go
package session
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/google/uuid"
|
|
)
|
|
|
|
func TestActiveProjectsSetGetClear(t *testing.T) {
|
|
store := NewActiveProjects()
|
|
projectID := uuid.New()
|
|
|
|
if _, ok := store.Get("session-1"); ok {
|
|
t.Fatal("Get() before Set() = true, want false")
|
|
}
|
|
|
|
store.Set("session-1", projectID)
|
|
got, ok := store.Get("session-1")
|
|
if !ok || got != projectID {
|
|
t.Fatalf("Get() = (%v, %v), want (%v, true)", got, ok, projectID)
|
|
}
|
|
|
|
store.Clear("session-1")
|
|
if _, ok := store.Get("session-1"); ok {
|
|
t.Fatal("Get() after Clear() = true, want false")
|
|
}
|
|
}
|