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