package registry_test

import (
	"testing"

	"bit.admedia.com/scm/ad/adpilot-indexing-code-parser.com/internal/service/parser/registry"
)

func TestBuildRegistersExpectedLanguages(t *testing.T) {
	built := registry.Build(registry.Options{EnableFallback: true})
	if built.Fallback == nil {
		t.Fatal("expected fallback analyzer")
	}

	langs := make(map[string]struct{})
	for _, a := range built.Analyzers {
		langs[a.SupportedLanguage()] = struct{}{}
	}

	expected := []string{
		"go", "javascript", "typescript", "python", "java", "php",
		"html", "vue", "blade", "twig", "jinja", "thymeleaf",
		"css", "scss", "sass", "less", "dart", "lua",
	}
	for _, lang := range expected {
		if _, ok := langs[lang]; !ok {
			t.Fatalf("missing language %q", lang)
		}
	}
}
