package rag import ( "strings" "testing" ) func TestChunk(t *testing.T) { doc := strings.Repeat("para one line.\n", 20) + "\n\n" + strings.Repeat("para two line.\n", 20) + "\n\n" + strings.Repeat("x", 5000) cs := Chunk(doc, 2000) if len(cs) < 3 { t.Fatalf("expected several chunks, got %d", len(cs)) } for _, c := range cs { if len(c) > 2000 { t.Fatalf("chunk exceeds limit: %d", len(c)) } if strings.TrimSpace(c) == "" { t.Fatal("empty chunk") } } if PromptVersion("a") == PromptVersion("b") || len(PromptVersion("a")) != 12 { t.Fatal("prompt version") } }