From 084cbb2fc9d422c26927e821cc04ae19715e1cc7 Mon Sep 17 00:00:00 2001 From: vishalnayak Date: Thu, 10 Mar 2016 16:17:09 -0500 Subject: [PATCH] Added test for token-lookup accessor flag --- command/token_lookup_test.go | 53 ++++++++++++++++++++++++++++++++++-- 1 file changed, 50 insertions(+), 3 deletions(-) diff --git a/command/token_lookup_test.go b/command/token_lookup_test.go index ca705d5026..9678f249cf 100644 --- a/command/token_lookup_test.go +++ b/command/token_lookup_test.go @@ -1,13 +1,60 @@ package command import ( + "testing" + "github.com/hashicorp/vault/api" "github.com/hashicorp/vault/http" "github.com/hashicorp/vault/vault" "github.com/mitchellh/cli" - "testing" ) +func TestTokenLookupAccessor(t *testing.T) { + core, _, token := vault.TestCoreUnsealed(t) + ln, addr := http.TestServer(t, core) + defer ln.Close() + + ui := new(cli.MockUi) + c := &TokenLookupCommand{ + Meta: Meta{ + ClientToken: token, + Ui: ui, + }, + } + args := []string{ + "-address", addr, + } + c.Run(args) + + // Create a new token for us to use + client, err := c.Client() + if err != nil { + t.Fatalf("err: %s", err) + } + resp, err := client.Auth().Token().Create(&api.TokenCreateRequest{ + Lease: "1h", + }) + if err != nil { + t.Fatalf("err: %s", err) + } + + // Enable the accessor flag + args = append(args, "-accessor") + + // Expect failure if no argument is passed when accessor flag is set + code := c.Run(args) + if code == 0 { + t.Fatalf("bad: %d\n\n%s", code, ui.ErrorWriter.String()) + } + + // Add token accessor as arg + args = append(args, resp.Auth.Accessor) + code = c.Run(args) + if code != 0 { + t.Fatalf("bad: %d\n\n%s", code, ui.ErrorWriter.String()) + } +} + func TestTokenLookupSelf(t *testing.T) { core, _, token := vault.TestCoreUnsealed(t) ln, addr := http.TestServer(t, core) @@ -46,7 +93,7 @@ func TestTokenLookup(t *testing.T) { Ui: ui, }, } - + args := []string{ "-address", addr, } @@ -73,4 +120,4 @@ func TestTokenLookup(t *testing.T) { if code != 0 { t.Fatalf("bad: %d\n\n%s", code, ui.ErrorWriter.String()) } -} \ No newline at end of file +}