github.com/safing/portbase@v0.19.5/config/registry_test.go (about) 1 package config 2 3 import ( 4 "testing" 5 ) 6 7 func TestRegistry(t *testing.T) { //nolint:paralleltest 8 // reset 9 options = make(map[string]*Option) 10 11 if err := Register(&Option{ 12 Name: "name", 13 Key: "key", 14 Description: "description", 15 ReleaseLevel: ReleaseLevelStable, 16 ExpertiseLevel: ExpertiseLevelUser, 17 OptType: OptTypeString, 18 DefaultValue: "water", 19 ValidationRegex: "^(banana|water)$", 20 }); err != nil { 21 t.Error(err) 22 } 23 24 if err := Register(&Option{ 25 Name: "name", 26 Key: "key", 27 Description: "description", 28 ReleaseLevel: ReleaseLevelStable, 29 ExpertiseLevel: ExpertiseLevelUser, 30 OptType: 0, 31 DefaultValue: "default", 32 ValidationRegex: "^[A-Z][a-z]+$", 33 }); err == nil { 34 t.Error("should fail") 35 } 36 37 if err := Register(&Option{ 38 Name: "name", 39 Key: "key", 40 Description: "description", 41 ReleaseLevel: ReleaseLevelStable, 42 ExpertiseLevel: ExpertiseLevelUser, 43 OptType: OptTypeString, 44 DefaultValue: "default", 45 ValidationRegex: "[", 46 }); err == nil { 47 t.Error("should fail") 48 } 49 }