package main import "testing" func TestParseModeAcceptsServerAndDeliver(t *testing.T) { for _, raw := range []string{"server", "deliver"} { mode, err := parseMode(raw) if err != nil { t.Fatalf("parseMode(%q) returned error: %v", raw, err) } if string(mode) != raw { t.Fatalf("parseMode(%q) = %q", raw, mode) } } } func TestParseModeRejectsUnknownMode(t *testing.T) { if _, err := parseMode("worker"); err == nil { t.Fatal("parseMode accepted unknown mode") } } func TestResolveVerifyIDCardReadsEnvironment(t *testing.T) { got, err := resolveVerifyIDCard(true, func(key string) string { if key == "OSI_VERIFY_ID_CARD" { return "440100199001011234" } return "" }) if err != nil { t.Fatalf("resolveVerifyIDCard: %v", err) } if got != "440100199001011234" { t.Fatalf("idCard = %q", got) } } func TestResolveVerifyIDCardRequiresEnvironment(t *testing.T) { if _, err := resolveVerifyIDCard(true, func(string) string { return "" }); err == nil { t.Fatal("resolveVerifyIDCard accepted missing OSI_VERIFY_ID_CARD") } }