fork of https://github.com/sourcegraph/zoekt
0

Configure Feed

Select the types of activity you want to include in your feed.

indexserver: More test cases for GetIndexOptions

Change-Id: I68a059e2ec2c319ec9c354f246e4d633105cadcd

+23 -9
+23 -9
cmd/zoekt-sourcegraph-indexserver/main_test.go
··· 9 9 ) 10 10 11 11 func TestGetIndexOptions(t *testing.T) { 12 + var response []byte 12 13 server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { 13 - w.Write([]byte(`{"Symbols": true, "LargeFiles": ["foo","bar"]}`)) 14 + w.Write(response) 14 15 })) 15 16 defer server.Close() 16 17 17 - u, _ := url.Parse(server.URL) 18 - opts, err := getIndexOptions(u, server.Client()) 18 + u, err := url.Parse(server.URL) 19 19 if err != nil { 20 - t.Fatalf("unexpected error: %v", err) 20 + t.Fatal(err) 21 21 } 22 22 23 - if len(opts.LargeFiles) == 0 { 24 - t.Error("expected non-empty result from large files list") 23 + cases := map[string][]string{ 24 + `{"Symbols": true, "LargeFiles": ["foo","bar"]}`: []string{"-require_ctags", "-large_file", "foo", "-large_file", "bar"}, 25 + 26 + `{"Symbols": false, "LargeFiles": ["foo","bar"]}`: []string{"-disable_ctags", "-large_file", "foo", "-large_file", "bar"}, 27 + 28 + `{}`: []string{"-disable_ctags"}, 29 + 30 + `{"Symbols": true}`: []string{"-require_ctags"}, 25 31 } 26 32 27 - want := []string{"-require_ctags", "-large_file", "foo", "-large_file", "bar"} 28 - if got := opts.toArgs(); !reflect.DeepEqual(got, want) { 29 - t.Errorf("got unexpected arguments from options\ngot: %v\nwant: %v\n", got, want) 33 + for r, want := range cases { 34 + response = []byte(r) 35 + 36 + opts, err := getIndexOptions(u, server.Client()) 37 + if err != nil { 38 + t.Fatalf("unexpected error: %v", err) 39 + } 40 + 41 + if got := opts.toArgs(); !reflect.DeepEqual(got, want) { 42 + t.Errorf("got unexpected arguments from options\ngot: %v\nwant: %v\n", got, want) 43 + } 30 44 } 31 45 }