summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lex-serve/data_test.go33
1 files changed, 33 insertions, 0 deletions
diff --git a/lex-serve/data_test.go b/lex-serve/data_test.go
new file mode 100644
index 0000000..7093b9f
--- /dev/null
+++ b/lex-serve/data_test.go
@@ -0,0 +1,33 @@
+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)
+ }
+ }
+}