1package cache
2
3import "testing"
4
5func TestQueryParse(t *testing.T) {
6
7 var tests = []struct {
8 input string
9 ok bool
10 }{
11 {"gibberish", false},
12
13 {"status:", false},
14
15 {"status:open", true},
16 {"status:closed", true},
17 {"status:unknown", false},
18
19 {"author:rene", true},
20 {`author:"René Descartes"`, true},
21
22 {"label:hello", true},
23 {`label:"Good first issue"`, true},
24
25 {"sort:edit", true},
26 {"sort:unknown", false},
27 }
28
29 for _, test := range tests {
30 _, err := ParseQuery(test.input)
31 if (err == nil) != test.ok {
32 t.Fatalf("Unexpected parse result, expected: %v, err: %v", test.ok, err)
33 }
34 }
35}