package syntax import "testing" func TestLanguageRegistryResolveByFiletype(t *testing.T) { r := newLanguageRegistry() res, ok, err := r.resolve("go", "") if err != nil { t.Fatalf("resolve error: %v", err) } if !ok || res == nil { t.Fatalf("expected go to resolve") } if res.id != "go" { t.Fatalf("expected go id, got %q", res.id) } } func TestLanguageRegistryResolveByExtension(t *testing.T) { r := newLanguageRegistry() res, ok, err := r.resolve("", "main.js") if err != nil { t.Fatalf("resolve error: %v", err) } if !ok || res == nil { t.Fatalf("expected javascript to resolve") } if res.id != "javascript" { t.Fatalf("expected javascript id, got %q", res.id) } } func TestLanguageRegistryUnknown(t *testing.T) { r := newLanguageRegistry() res, ok, err := r.resolve("txt", "notes.txt") if err != nil { t.Fatalf("expected no error for unknown language, got: %v", err) } if ok || res != nil { t.Fatalf("expected unknown language to not resolve") } }