summaryrefslogtreecommitdiff
path: root/go/internal/command/command_test.go
diff options
context:
space:
mode:
authorPatrick Bajao <ebajao@gitlab.com>2019-07-29 15:56:00 +0800
committerPatrick Bajao <ebajao@gitlab.com>2019-07-31 12:03:37 +0800
commit3b0176df497263323da2fae793a79b568502e6db (patch)
treef4ff3e232bc3717c539d73a4f0460d6d12b4a6de /go/internal/command/command_test.go
parentaab85f3600caf04b491d6ca4fc3f0f004d9e3fc0 (diff)
downloadgitlab-shell-3b0176df497263323da2fae793a79b568502e6db.tar.gz
Support different CommandArgs type
`CommandArgs` has been renamed to `Shell`. An interface has been added that includes `Executable()` and `Arguments()` method. The `BaseArgs` implement this methods and should be embeeded in each type.
Diffstat (limited to 'go/internal/command/command_test.go')
-rw-r--r--go/internal/command/command_test.go15
1 files changed, 9 insertions, 6 deletions
diff --git a/go/internal/command/command_test.go b/go/internal/command/command_test.go
index 2341dbb..d8ef295 100644
--- a/go/internal/command/command_test.go
+++ b/go/internal/command/command_test.go
@@ -129,6 +129,12 @@ func TestNew(t *testing.T) {
arguments: []string{string(commandargs.GitlabShell)},
expectedType: &fallback.Command{},
},
+ {
+ desc: "it returns a Fallback command if executable is unknown",
+ config: &config.Config{},
+ arguments: []string{"unknown"},
+ expectedType: &fallback.Command{},
+ },
}
for _, tc := range testCases {
@@ -145,12 +151,9 @@ func TestNew(t *testing.T) {
}
func TestFailingNew(t *testing.T) {
- t.Run("It returns an error when SSH_CONNECTION is not set", func(t *testing.T) {
- restoreEnv := testhelper.TempEnv(map[string]string{})
- defer restoreEnv()
-
- _, err := New([]string{string(commandargs.GitlabShell)}, &config.Config{}, nil)
+ t.Run("It returns an error parsing arguments failed", func(t *testing.T) {
+ _, err := New([]string{}, &config.Config{}, nil)
- require.Error(t, err, "Only ssh allowed")
+ require.Error(t, err)
})
}