Skip to content

Commit

Permalink
Fixed typo in error template for auth describe (#1341)
Browse files Browse the repository at this point in the history
## Changes
Fixed typo in error template for auth describe

## Tests
Manually + added integration test
  • Loading branch information
andrewnester authored Apr 8, 2024
1 parent 77ff994 commit 60a4a34
Show file tree
Hide file tree
Showing 2 changed files with 50 additions and 1 deletion.
2 changes: 1 addition & 1 deletion cmd/auth/describe.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ var authTemplate = `{{"Host:" | bold}} {{.Status.Details.Host}}
-----
` + configurationTemplate

var errorTemplate = `Unable to authenticate: {{.Error}}
var errorTemplate = `Unable to authenticate: {{.Status.Error}}
-----
` + configurationTemplate

Expand Down
49 changes: 49 additions & 0 deletions internal/auth_describe_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
package internal

import (
"context"
"fmt"
"testing"

"github.com/databricks/databricks-sdk-go"
"github.com/stretchr/testify/require"
)

func TestAuthDescribeSuccess(t *testing.T) {
t.Log(GetEnvOrSkipTest(t, "CLOUD_ENV"))

stdout, _ := RequireSuccessfulRun(t, "auth", "describe")
outStr := stdout.String()

w, err := databricks.NewWorkspaceClient(&databricks.Config{})
require.NoError(t, err)

require.NotEmpty(t, outStr)
require.Contains(t, outStr, fmt.Sprintf("Host: %s", w.Config.Host))

me, err := w.CurrentUser.Me(context.Background())
require.NoError(t, err)
require.Contains(t, outStr, fmt.Sprintf("User: %s", me.UserName))
require.Contains(t, outStr, fmt.Sprintf("Authenticated with: %s", w.Config.AuthType))
require.Contains(t, outStr, "Current configuration:")
require.Contains(t, outStr, fmt.Sprintf("✓ host: %s", w.Config.Host))
require.Contains(t, outStr, "✓ profile: default")
}

func TestAuthDescribeFailure(t *testing.T) {
t.Log(GetEnvOrSkipTest(t, "CLOUD_ENV"))

stdout, _ := RequireSuccessfulRun(t, "auth", "describe", "--profile", "nonexistent")
outStr := stdout.String()

require.NotEmpty(t, outStr)
require.Contains(t, outStr, "Unable to authenticate: resolve")
require.Contains(t, outStr, "has no nonexistent profile configured")
require.Contains(t, outStr, "Current configuration:")

w, err := databricks.NewWorkspaceClient(&databricks.Config{})
require.NoError(t, err)

require.Contains(t, outStr, fmt.Sprintf("✓ host: %s", w.Config.Host))
require.Contains(t, outStr, "✓ profile: nonexistent (from --profile flag)")
}

0 comments on commit 60a4a34

Please sign in to comment.