1package types 2 3import ( 4 "testing" 5) 6 7func TestEnumParserBool(t *testing.T) { 8 for _, tt := range []struct { 9 val string 10 res bool 11 ok bool 12 }{ 13 {val: "tRuE", res: true, ok: true}, 14 {val: "False", res: false, ok: true}, 15 {val: "t", ok: false}, 16 } { 17 b, err := ParseBool(tt.val) 18 switch { 19 case tt.ok && err != nil: 20 t.Errorf("%q: got error %v, want %v", tt.val, err, tt.res) 21 case !tt.ok && err == nil: 22 t.Errorf("%q: got %v, want error", tt.val, b) 23 case tt.ok && b != tt.res: 24 t.Errorf("%q: got %v, want %v", tt.val, b, tt.res) 25 default: 26 t.Logf("%q: got %v, %v", tt.val, b, err) 27 } 28 } 29} 30