query_test.go

 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		// Todo: fix parsing
20		// {"author:\"Rene Descartes\"", true},
21
22	}
23
24	for _, test := range tests {
25		_, err := ParseQuery(test.input)
26		if (err == nil) != test.ok {
27			t.Fatalf("Unexpected parse result, expected: %v, err: %v", test.ok, err)
28		}
29	}
30}