From 0e76470249d907ed9f6623be5e9409aaa6c148ac Mon Sep 17 00:00:00 2001 From: Shivaram Lingamneni Date: Sun, 15 Mar 2026 00:47:33 -0700 Subject: [PATCH] allow testing irc/ with i18n compiled out (#2363) Add to `make test` as well --- Makefile | 1 + irc/strings_test.go | 17 +++++++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index e66d6745..6c47773f 100644 --- a/Makefile +++ b/Makefile @@ -41,6 +41,7 @@ test: python3 ./gencapdefs.py | diff - ${capdef_file} go test -tags "$(full_tags)" ./... go vet -tags "$(full_tags)" ./... + go test ./... go vet -tags "" ./... ./.check-gofmt.sh diff --git a/irc/strings_test.go b/irc/strings_test.go index d70f5b67..537e55f5 100644 --- a/irc/strings_test.go +++ b/irc/strings_test.go @@ -11,6 +11,10 @@ import ( "github.com/ergochat/ergo/irc/i18n" ) +var ( + asciiCasemappingOnly = []i18n.Casemapping{i18n.CasemappingASCII} +) + func TestCasefoldChannelAllCasemappings(t *testing.T) { oldGlobalCasemapping := globalCasemappingSetting t.Cleanup(func() { @@ -82,6 +86,9 @@ func TestCasefoldChannelAllCasemappings(t *testing.T) { // don't test permissive because it doesn't fail on bidi violations casemappings := []i18n.Casemapping{i18n.CasemappingASCII, i18n.CasemappingPRECIS} + if !i18n.Enabled { + casemappings = asciiCasemappingOnly // XXX allow testing this package with i18n compiled out + } for _, casemapping := range casemappings { globalCasemappingSetting = casemapping @@ -137,6 +144,9 @@ func TestCasefoldNameAllCasemappings(t *testing.T) { } casemappings := []i18n.Casemapping{i18n.CasemappingASCII, i18n.CasemappingPRECIS, i18n.CasemappingPermissive, i18n.CasemappingRFC1459Strict} + if !i18n.Enabled { + casemappings = asciiCasemappingOnly // XXX allow testing this package with i18n compiled out + } for _, casemapping := range casemappings { globalCasemappingSetting = casemapping @@ -189,10 +199,8 @@ func TestCanonicalizeMaskWildcard(t *testing.T) { tester("shivaram", "shivaram!*@*", nil) tester("slingamn!shivaram", "slingamn!shivaram@*", nil) - tester("ברוך", "ברוך!*@*", nil) tester("hacker@monad.io", "*!hacker@monad.io", nil) tester("Evan!hacker@monad.io", "evan!hacker@monad.io", nil) - tester("РОТАТО!Potato", "ротато!potato@*", nil) tester("tkadich*", "tkadich*!*@*", nil) tester("SLINGAMN!*@*", "slingamn!*@*", nil) tester("slingamn!shivaram*", "slingamn!shivaram*@*", nil) @@ -206,4 +214,9 @@ func TestCanonicalizeMaskWildcard(t *testing.T) { tester(":shivaram", "", errInvalidCharacter) tester("shivaram!us er@host", "", errInvalidCharacter) tester("shivaram!user@ho st", "", errInvalidCharacter) + + if i18n.Enabled { + tester("ברוך", "ברוך!*@*", nil) + tester("РОТАТО!Potato", "ротато!potato@*", nil) + } }