package main import ( "bytes" "os" "slices" "strings" "testing" "github.com/BurntSushi/toml" ) func TestCountryCodesAreInCCTLDs(t *testing.T) { countries := map[string]country{} _, err := toml.NewDecoder(bytes.NewReader(countriesTOML)).Decode(&countries) if err != nil { t.Fatalf("failed to parse countries.toml: %s", err) } if err != nil { t.Fatalf("expected no error, got %s", err) } tldBytes, err := os.ReadFile("../cc-tlds.txt") if err != nil { t.Fatalf("expected no error, got %s", err) } ccTLDs := strings.Split(string(tldBytes), "\n") for code, _ := range countries { if !slices.Contains(ccTLDs, code) { t.Fatalf("expected country code (%s) defined in countries.toml to also be in cc-tlds.txt", code) } } }