diff --git a/pkg/client/client.go b/pkg/client/client.go index 5128e3693e8..eb1902dee56 100644 --- a/pkg/client/client.go +++ b/pkg/client/client.go @@ -328,6 +328,7 @@ func (c *Client) ServerVersion() (*version.Info, error) { return &info, nil } +// Lists all the minions in the cluster. func (c *Client) ListMinions() (minionList api.MinionList, err error) { err = c.Get().Path("minions").Do().Into(&minionList) return diff --git a/pkg/client/client_test.go b/pkg/client/client_test.go index 21c2d440d20..74166adc6de 100644 --- a/pkg/client/client_test.go +++ b/pkg/client/client_test.go @@ -515,3 +515,12 @@ func TestGetServerVersion(t *testing.T) { t.Errorf("expected %v, got %v", e, a) } } + +func TestListMinions(t *testing.T) { + c := &testClient{ + Request: testRequest{Method: "GET", Path: "/minions"}, + Response: Response{StatusCode: 200, Body: &api.MinionList{JSONBase: api.JSONBase{ID: "minion-1"}}}, + } + response, err := c.Setup().ListMinions() + c.Validate(t, &response, err) +} diff --git a/pkg/client/fake.go b/pkg/client/fake.go index b03f599a1c7..d8e7d14a5b2 100644 --- a/pkg/client/fake.go +++ b/pkg/client/fake.go @@ -117,3 +117,8 @@ func (c *Fake) ServerVersion() (*version.Info, error) { versionInfo := version.Get() return &versionInfo, nil } + +func (c *Fake) ListMinions() (api.MinionList, error) { + c.Actions = append(c.Actions, FakeAction{Action: "list-minions", Value: nil}) + return api.MinionList{}, nil +}