-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathprobes_test.go
54 lines (47 loc) · 1.12 KB
/
probes_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
/*
(C) 2022 Robert Kisteleki & RIPE NCC
See LICENSE file for the license.
*/
package goat
import (
"testing"
)
// Test if the filter validator does a decent job
func TestProbeFilterValidator(t *testing.T) {
var err error
var filter *ProbeFilter
badtag := "*"
goodtag := "ooo"
filter = NewProbeFilter()
filter.FilterTags([]string{badtag})
err = filter.verifyFilters()
if err == nil {
t.Fatalf("Bad tag '%s' not filtered properly", badtag)
}
filter = NewProbeFilter()
filter.FilterTags([]string{"ooo"})
err = filter.verifyFilters()
if err != nil {
t.Fatalf("Good tag '%s' is not allowed", goodtag)
}
badcc := "NED"
goodcc := "NL"
filter = NewProbeFilter()
filter.FilterCountry(badcc)
err = filter.verifyFilters()
if err == nil {
t.Fatalf("Bad country code '%s' not filtered properly", badcc)
}
filter = NewProbeFilter()
filter.FilterCountry(goodcc)
err = filter.verifyFilters()
if err != nil {
t.Fatalf("Good country code '%s' is not allowed", goodcc)
}
filter = NewProbeFilter()
filter.Sort("abcd")
err = filter.verifyFilters()
if err == nil {
t.Fatalf("Sort order is not filtered properly")
}
}