databricks-cli/internal/alerts_test.go

15 lines
334 B
Go
Raw Permalink Normal View History

Correctly set ExactArgs if generated command has positional arguments (#488) ## Changes Some of the command such as `databricks alerts create` require positional arguments which are not primitive. Since these arguments are required, we should correctly set ExactArgs for such commands Fixes #367 ## Tests Running `databricks alerts create` Before ``` andrew.nester@HFW9Y94129 cli % ./cli alerts create panic: runtime error: index out of range [0] with length 0 goroutine 1 [running]: github.com/databricks/bricks/cmd/workspace/alerts.glob..func1(0x22a1280?, {0x2321638, 0x0, 0x0?}) github.com/databricks/bricks/cmd/workspace/alerts/alerts.go:57 +0x355 github.com/spf13/cobra.(*Command).execute(0x22a1280, {0x2321638, 0x0, 0x0}) github.com/spf13/cobra@v1.7.0/command.go:940 +0x862 github.com/spf13/cobra.(*Command).ExecuteC(0x22a0700) github.com/spf13/cobra@v1.7.0/command.go:1068 +0x3bd github.com/spf13/cobra.(*Command).ExecuteContextC(...) github.com/spf13/cobra@v1.7.0/command.go:1001 github.com/databricks/bricks/cmd/root.Execute() github.com/databricks/bricks/cmd/root/root.go:80 +0x6a main.main() github.com/databricks/bricks/main.go:18 +0x17 ``` After ``` andrew.nester@HFW9Y94129 cli % ./cli alerts create Error: provide command input in JSON format by specifying --json option ``` Acceptance test ``` === RUN TestAccAlertsCreateErrWhenNoArguments alerts_test.go:10: gcp helpers.go:147: Error running command: provide command input in JSON format by specifying --json option --- PASS: TestAccAlertsCreateErrWhenNoArguments (1.99s) PASS ```
2023-06-16 12:15:25 +00:00
package internal
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestAccAlertsCreateErrWhenNoArguments(t *testing.T) {
t.Log(GetEnvOrSkipTest(t, "CLOUD_ENV"))
_, _, err := RequireErrorRun(t, "alerts", "create")
assert.Equal(t, "provide command input in JSON format by specifying --json option", err.Error())
}