@@ -28,17 +28,35 @@ func FuzzRandomInterval(f *testing.F) {
28
28
f .Fuzz (func (t * testing.T , interval string ) {
29
29
re := regexp .MustCompile (`^\d+(-\d+)?$` )
30
30
intervals := strings .Split (interval , "-" )
31
- err := RandomInterval (interval )
32
-
33
- if re .MatchString (interval ) == false {
34
- assert .Error (t , err , "{\" errorCode\" :\" GENERIC_ERROR\" ,\" reason\" :\" could not parse CHAOS_INTERVAL env, bad input\" }" )
31
+ skip := false
32
+ if re .MatchString (interval ) {
33
+ a , _ := strconv .Atoi (intervals [0 ])
34
+ if len (intervals ) == 2 {
35
+ b , _ := strconv .Atoi (intervals [1 ])
36
+ if a > 5 || (b - a ) > 5 || (b - a ) < 1 {
37
+ skip = true
38
+ }
39
+ } else if len (intervals ) == 1 {
40
+ if a > 5 || a < 1 {
41
+ skip = true
42
+ }
43
+ }
35
44
}
36
45
37
- num , _ := strconv .Atoi (intervals [0 ])
38
- if num < 1 && err != nil {
39
- assert .Error (t , err , "{\" errorCode\" :\" GENERIC_ERROR\" ,\" reason\" :\" invalid CHAOS_INTERVAL env value, value below lower limit\" }" )
40
- } else if num > 1 && err != nil {
41
- t .Errorf ("Unexpected Error: %v" , err )
46
+ if ! skip {
47
+ err := RandomInterval (interval )
48
+ if re .MatchString (interval ) == false {
49
+ assert .Error (t , err , "{\" errorCode\" :\" GENERIC_ERROR\" ,\" reason\" :\" could not parse CHAOS_INTERVAL env, bad input\" }" )
50
+ return
51
+ }
52
+
53
+ num , _ := strconv .Atoi (intervals [0 ])
54
+ if num < 1 && err != nil {
55
+ assert .Error (t , err , "{\" errorCode\" :\" GENERIC_ERROR\" ,\" reason\" :\" invalid CHAOS_INTERVAL env value, value below lower limit\" }" )
56
+ return
57
+ } else if num > 1 && err != nil {
58
+ t .Errorf ("Unexpected Error: %v" , err )
59
+ }
42
60
}
43
61
})
44
62
}
0 commit comments