github.com/DelineaXPM/dsv-cli@v1.40.6/tests/e2e/cmd_auth_provider_test.go (about)

     1  //go:build endtoend
     2  // +build endtoend
     3  
     4  package e2e
     5  
     6  import (
     7  	"fmt"
     8  	"testing"
     9  )
    10  
    11  func TestAuthProvider(t *testing.T) {
    12  	authProviderName := makeAuthProviderName()
    13  
    14  	output := runWithProfile(t, "config auth-provider")
    15  	requireContains(t, output, "Execute an action on an auth-provider")
    16  
    17  	output = runWithProfile(t, "config auth-provider --help")
    18  	requireContains(t, output, "Execute an action on an auth-provider")
    19  
    20  	output = runWithProfile(t, fmt.Sprintf(
    21  		"config auth-provider create --name %s --type aws --aws-account-id 1234", authProviderName,
    22  	))
    23  	requireContains(t, output, fmt.Sprintf(`"name": "%s"`, authProviderName))
    24  	requireContains(t, output, `"type": "aws"`)
    25  	requireContains(t, output, `"properties": {`)
    26  	requireContains(t, output, `"accountId": "1234"`)
    27  
    28  	output = runWithProfile(t, fmt.Sprintf(
    29  		"config auth-provider read --name %s", authProviderName,
    30  	))
    31  	requireContains(t, output, fmt.Sprintf(`"name": "%s"`, authProviderName))
    32  	requireContains(t, output, `"type": "aws"`)
    33  	requireContains(t, output, `"properties": {`)
    34  	requireContains(t, output, `"accountId": "1234"`)
    35  
    36  	output = runWithProfile(t, fmt.Sprintf(
    37  		"config auth-provider update --name %s --type aws --aws-account-id 4321", authProviderName,
    38  	))
    39  	requireContains(t, output, fmt.Sprintf(`"name": "%s"`, authProviderName))
    40  	requireContains(t, output, `"type": "aws"`)
    41  	requireContains(t, output, `"properties": {`)
    42  	requireContains(t, output, `"accountId": "4321"`)
    43  
    44  	output = runWithProfile(t, fmt.Sprintf(
    45  		"config auth-provider rollback --name %s", authProviderName,
    46  	))
    47  	requireContains(t, output, fmt.Sprintf(`"name": "%s"`, authProviderName))
    48  	requireContains(t, output, `"type": "aws"`)
    49  	requireContains(t, output, `"properties": {`)
    50  	requireContains(t, output, `"accountId": "1234"`)
    51  
    52  	output = runWithProfile(t, fmt.Sprintf(
    53  		"config auth-provider delete --name %s --force", authProviderName,
    54  	))
    55  	requireEmpty(t, output)
    56  }