diff options
| author | jwijenbergh <jeroenwijenbergh@protonmail.com> | 2024-08-26 16:11:18 +0200 |
|---|---|---|
| committer | Jeroen Wijenbergh <46386452+jwijenbergh@users.noreply.github.com> | 2024-10-28 17:02:14 +0100 |
| commit | 491531aeabcc0294338ee3e78383e684a1687d8f (patch) | |
| tree | febf16fa2a8b18eda2f8b2ca9be7cf223b4af7cc | |
| parent | fcb8a420ba5dfcad946e81c11007df7ec9cd2fa3 (diff) | |
Util: Test GetLanguageMatched
| -rw-r--r-- | util/util_test.go | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/util/util_test.go b/util/util_test.go index 0f4888d..c2e2a75 100644 --- a/util/util_test.go +++ b/util/util_test.go @@ -80,3 +80,47 @@ func TestCalculateGateway(t *testing.T) { } } } + +func TestGetLanguageMatched(t *testing.T) { + // exact match + returned := GetLanguageMatched(map[string]string{"en": "test", "de": "test2"}, "en") + if returned != "test" { + t.Fatalf("Got: %s, want: %s", returned, "test") + } + + // starts with language tag + returned = GetLanguageMatched(map[string]string{"en-US-test": "test", "de": "test2"}, "en-US") + if returned != "test" { + t.Fatalf("Got: %s, want: %s", returned, "test") + } + + // starts with en- + returned = GetLanguageMatched(map[string]string{"en-UK": "test", "en": "test2"}, "en-US") + if returned != "test" { + t.Fatalf("Got: %s, want: %s", returned, "test") + } + + // exact match for en + returned = GetLanguageMatched(map[string]string{"de": "test", "en": "test2"}, "en-US") + if returned != "test2" { + t.Fatalf("Got: %s, want: %s", returned, "test2") + } + + // We default to english + returned = GetLanguageMatched(map[string]string{"es": "test", "en": "test2"}, "nl-NL") + if returned != "test2" { + t.Fatalf("Got: %s, want: %s", returned, "test2") + } + + // We default to english with a - as well + returned = GetLanguageMatched(map[string]string{"est": "test", "en-": "test2"}, "en-US") + if returned != "test2" { + t.Fatalf("Got: %s, want: %s", returned, "test2") + } + + // None found just return one + returned = GetLanguageMatched(map[string]string{"es": "test"}, "en-US") + if returned != "test" { + t.Fatalf("Got: %s, want: %s", returned, "test") + } +} |
