Initial commit of Descrybe v2 without local scratch artifacts.
Drop one-shot tmp/axe scripts and agent i18n scratch so the Gitea tree is deployable.
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
package processing
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/descrybe/descrybe-v2/apps/api/internal/company"
|
||||
)
|
||||
|
||||
func TestResolvePromptFallbackChain(t *testing.T) {
|
||||
t.Parallel()
|
||||
// Category override for language wins over company user template.
|
||||
sys, user := resolveProductPromptTemplates(ProductInput{
|
||||
EnhanceSystemTemplate: "sys",
|
||||
EnhanceUserTemplate: "company-en",
|
||||
CategoryEnhancePrompt: "cat-sl",
|
||||
Language: "sl",
|
||||
})
|
||||
if sys != "sys" || user != "cat-sl" {
|
||||
t.Fatalf("sys=%q user=%q", sys, user)
|
||||
}
|
||||
|
||||
// Empty category → company template.
|
||||
_, user = resolveProductPromptTemplates(ProductInput{
|
||||
EnhanceUserTemplate: "company-de",
|
||||
Language: "de",
|
||||
})
|
||||
if user != "company-de" {
|
||||
t.Fatalf("user=%q", user)
|
||||
}
|
||||
|
||||
// categoryEnhancePromptFor: lang-specific only (no cross-lang fallback).
|
||||
m := map[string]company.LangPromptMap{"audio": {"sl": "slo-prompt"}}
|
||||
if got := categoryEnhancePromptFor(m, "audio", "sl"); got != "slo-prompt" {
|
||||
t.Fatalf("got %q", got)
|
||||
}
|
||||
if got := categoryEnhancePromptFor(m, "audio", "en"); got != "" {
|
||||
t.Fatalf("cross-lang should be empty, got %q", got)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user