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 {"title:Bug titleOne", true},
26 {`title:"Bug titleTwo"`, true},
27
28 {"sort:edit", true},
29 {"sort:unknown", false},
30 }
31
32 for _, test := range tests {
33 _, err := ParseQuery(test.input)
34 if (err == nil) != test.ok {
35 t.Fatalf("Unexpected parse result, expected: %v, err: %v", test.ok, err)
36 }
37 }
38}