@@ -22,91 +22,97 @@ import (
2222)
2323
2424func TestAlertValidate (t * testing.T ) {
25- oldScheme := NameValidationScheme
26- NameValidationScheme = LegacyValidation
27- defer func () {
28- NameValidationScheme = oldScheme
29- }()
3025 ts := time .Now ()
3126
3227 cases := []struct {
33- alert * Alert
34- err string
28+ alert * Alert
29+ err string
30+ scheme NameValidationScheme
3531 }{
3632 {
3733 alert : & Alert {
3834 Labels : LabelSet {"a" : "b" },
3935 StartsAt : ts ,
4036 },
37+ scheme : LegacyValidation ,
4138 },
4239 {
4340 alert : & Alert {
4441 Labels : LabelSet {"a" : "b" },
4542 },
46- err : "start time missing" ,
43+ scheme : LegacyValidation ,
44+ err : "start time missing" ,
4745 },
4846 {
4947 alert : & Alert {
5048 Labels : LabelSet {"a" : "b" },
5149 StartsAt : ts ,
5250 EndsAt : ts ,
5351 },
52+ scheme : LegacyValidation ,
5453 },
5554 {
5655 alert : & Alert {
5756 Labels : LabelSet {"a" : "b" },
5857 StartsAt : ts ,
5958 EndsAt : ts .Add (1 * time .Minute ),
6059 },
60+ scheme : LegacyValidation ,
6161 },
6262 {
6363 alert : & Alert {
6464 Labels : LabelSet {"a" : "b" },
6565 StartsAt : ts ,
6666 EndsAt : ts .Add (- 1 * time .Minute ),
6767 },
68- err : "start time must be before end time" ,
68+ scheme : LegacyValidation ,
69+ err : "start time must be before end time" ,
6970 },
7071 {
7172 alert : & Alert {
7273 StartsAt : ts ,
7374 },
74- err : "at least one label pair required" ,
75+ scheme : LegacyValidation ,
76+ err : "at least one label pair required" ,
7577 },
7678 {
7779 alert : & Alert {
7880 Labels : LabelSet {"a" : "b" , "!bad" : "label" },
7981 StartsAt : ts ,
8082 },
81- err : "invalid label set: invalid name" ,
83+ scheme : LegacyValidation ,
84+ err : "invalid label set: invalid name" ,
8285 },
8386 {
8487 alert : & Alert {
8588 Labels : LabelSet {"a" : "b" , "bad" : "\xff label" },
8689 StartsAt : ts ,
8790 },
88- err : "invalid label set: invalid value" ,
91+ scheme : LegacyValidation ,
92+ err : "invalid label set: invalid value" ,
8993 },
9094 {
9195 alert : & Alert {
9296 Labels : LabelSet {"a" : "b" },
9397 Annotations : LabelSet {"!bad" : "label" },
9498 StartsAt : ts ,
9599 },
96- err : "invalid annotations: invalid name" ,
100+ scheme : LegacyValidation ,
101+ err : "invalid annotations: invalid name" ,
97102 },
98103 {
99104 alert : & Alert {
100105 Labels : LabelSet {"a" : "b" },
101106 Annotations : LabelSet {"bad" : "\xff label" },
102107 StartsAt : ts ,
103108 },
104- err : "invalid annotations: invalid value" ,
109+ scheme : LegacyValidation ,
110+ err : "invalid annotations: invalid value" ,
105111 },
106112 }
107113
108114 for i , c := range cases {
109- err := c .alert .Validate ()
115+ err := c .alert .Validate (c . scheme )
110116 if err == nil {
111117 if c .err == "" {
112118 continue
0 commit comments