Skip to content

Commit

Permalink
add more tests
Browse files Browse the repository at this point in the history
  • Loading branch information
roncodingenthusiast committed Mar 6, 2023
1 parent 0313fa6 commit 6e19413
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 27 deletions.
2 changes: 1 addition & 1 deletion command/acl/token/update/token_update.go
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ func (c *cmd) Run(args []string) int {
hasServiceFields := len(c.serviceIdents) > 0
parsedServiceIdents, err := acl.ExtractServiceIdentities(c.serviceIdents)
if hasAppendServiceFields {
parsedServiceIdents, err = acl.ExtractServiceIdentities(c.serviceIdents)
parsedServiceIdents, err = acl.ExtractServiceIdentities(c.appendServiceIdents)
}

if hasAppendServiceFields && hasServiceFields {
Expand Down
56 changes: 30 additions & 26 deletions command/acl/token/update/token_update_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,22 @@ func TestTokenUpdateCommand(t *testing.T) {
require.ElementsMatch(t, expected, token.NodeIdentities)
})

// update with append-node-identity
t.Run("append-node-identity", func(t *testing.T) {

token := run(t, []string{
"-http-addr=" + a.HTTPAddr(),
"-accessor-id=" + token.AccessorID,
"-token=root",
"-append-node-identity=third:node",
"-description=test token",
})

require.Len(t, token.NodeIdentities, 3)
require.Equal(t, "third", token.NodeIdentities[2].NodeName)
require.Equal(t, "node", token.NodeIdentities[2].Datacenter)
})

// update with policy by name
t.Run("policy-name", func(t *testing.T) {
token := run(t, []string{
Expand Down Expand Up @@ -149,6 +165,19 @@ func TestTokenUpdateCommand(t *testing.T) {
require.Equal(t, "service", token.ServiceIdentities[0].ServiceName)
})

// update with append-service-identity
t.Run("append-service-identity", func(t *testing.T) {
token := run(t, []string{
"-http-addr=" + a.HTTPAddr(),
"-accessor-id=" + token.AccessorID,
"-token=root",
"-append-service-identity=web",
"-description=test token",
})
require.Len(t, token.ServiceIdentities, 2)
require.Equal(t, "web", token.ServiceIdentities[1].ServiceName)
})

// update with no description shouldn't delete the current description
t.Run("merge-description", func(t *testing.T) {
token := run(t, []string{
Expand Down Expand Up @@ -192,15 +221,7 @@ func TestTokenUpdateCommandWithAppend(t *testing.T) {

// create a token
token, _, err := client.ACL().TokenCreate(
&api.ACLToken{Description: "test",
Policies: []*api.ACLTokenPolicyLink{{Name: policy.Name}},
NodeIdentities: []*api.ACLNodeIdentity{
{
NodeName: "test-node",
Datacenter: "eastsomewhere",
},
},
},
&api.ACLToken{Description: "test", Policies: []*api.ACLTokenPolicyLink{{Name: policy.Name}}},
&api.WriteOptions{Token: "root"},
)
require.NoError(t, err)
Expand Down Expand Up @@ -257,23 +278,6 @@ func TestTokenUpdateCommandWithAppend(t *testing.T) {

require.Len(t, token.Policies, 3)
})

// update with append-node-identity
t.Run("append-node-identity", func(t *testing.T) {
require.Len(t, token.NodeIdentities, 1)

token := run(t, []string{
"-http-addr=" + a.HTTPAddr(),
"-accessor-id=" + token.AccessorID,
"-token=root",
"-append-node-identity=foo:bar",
"-description=test token",
})

require.Len(t, token.NodeIdentities, 2)
require.Equal(t, "foo", token.NodeIdentities[1].NodeName)
require.Equal(t, "bar", token.NodeIdentities[1].Datacenter)
})
}

func TestTokenUpdateCommand_JSON(t *testing.T) {
Expand Down

0 comments on commit 6e19413

Please sign in to comment.