package router

import (
	"strings"
	"testing"
)

func TestKnowledgePrompt(t *testing.T) {
	prompt := KnowledgePrompt()
	if prompt == "" {
		t.Fatal("KnowledgePrompt returned empty string")
	}
	// Must contain key instructions
	checks := []string{"не знаю", "не выдумывай"}
	for _, c := range checks {
		if !strings.Contains(strings.ToLower(prompt), strings.ToLower(c)) {
			t.Errorf("KnowledgePrompt should mention %q", c)
		}
	}
	// Who she is comes from the shared persona block now. This prompt used to
	// say it too, with a different name and a masculine noun, which is the
	// drift the block exists to stop.
	for _, w := range []string{"Мавена", "ассистент"} {
		if strings.Contains(prompt, w) {
			t.Errorf("KnowledgePrompt should not introduce her (%q) — the persona block does", w)
		}
	}
}
