1// Copyright 2012-present Oliver Eilhard. All rights reserved. 2// Use of this source code is governed by a MIT-license. 3// See http://olivere.mit-license.org/license.txt for details. 4 5package elastic 6 7import "testing" 8 9func TestSnapshotGetRepositoryURL(t *testing.T) { 10 client := setupTestClient(t) 11 12 tests := []struct { 13 Repository []string 14 Expected string 15 }{ 16 { 17 []string{}, 18 "/_snapshot", 19 }, 20 { 21 []string{"repo1"}, 22 "/_snapshot/repo1", 23 }, 24 { 25 []string{"repo1", "repo2"}, 26 "/_snapshot/repo1%2Crepo2", 27 }, 28 } 29 30 for _, test := range tests { 31 path, _, err := client.SnapshotGetRepository(test.Repository...).buildURL() 32 if err != nil { 33 t.Fatal(err) 34 } 35 if path != test.Expected { 36 t.Errorf("expected %q; got: %q", test.Expected, path) 37 } 38 } 39} 40