diff options
Diffstat (limited to 'go/internal/command/discover')
-rw-r--r-- | go/internal/command/discover/discover.go | 13 | ||||
-rw-r--r-- | go/internal/command/discover/discover_test.go | 11 |
2 files changed, 10 insertions, 14 deletions
diff --git a/go/internal/command/discover/discover.go b/go/internal/command/discover/discover.go index ab04cbd..8ad2868 100644 --- a/go/internal/command/discover/discover.go +++ b/go/internal/command/discover/discover.go @@ -2,10 +2,9 @@ package discover import ( "fmt" - "io" - "os" "gitlab.com/gitlab-org/gitlab-shell/go/internal/command/commandargs" + "gitlab.com/gitlab-org/gitlab-shell/go/internal/command/reporting" "gitlab.com/gitlab-org/gitlab-shell/go/internal/config" "gitlab.com/gitlab-org/gitlab-shell/go/internal/gitlabnet/discover" ) @@ -15,20 +14,16 @@ type Command struct { Args *commandargs.CommandArgs } -var ( - output io.Writer = os.Stdout -) - -func (c *Command) Execute() error { +func (c *Command) Execute(reporter *reporting.Reporter) error { response, err := c.getUserInfo() if err != nil { return fmt.Errorf("Failed to get username: %v", err) } if response.IsAnonymous() { - fmt.Fprintf(output, "Welcome to GitLab, Anonymous!\n") + fmt.Fprintf(reporter.Out, "Welcome to GitLab, Anonymous!\n") } else { - fmt.Fprintf(output, "Welcome to GitLab, @%s!\n", response.Username) + fmt.Fprintf(reporter.Out, "Welcome to GitLab, @%s!\n", response.Username) } return nil diff --git a/go/internal/command/discover/discover_test.go b/go/internal/command/discover/discover_test.go index 752e76e..ec6f931 100644 --- a/go/internal/command/discover/discover_test.go +++ b/go/internal/command/discover/discover_test.go @@ -11,6 +11,7 @@ import ( "github.com/stretchr/testify/require" "gitlab.com/gitlab-org/gitlab-shell/go/internal/command/commandargs" + "gitlab.com/gitlab-org/gitlab-shell/go/internal/command/reporting" "gitlab.com/gitlab-org/gitlab-shell/go/internal/config" "gitlab.com/gitlab-org/gitlab-shell/go/internal/gitlabnet/testserver" ) @@ -78,11 +79,10 @@ func TestExecute(t *testing.T) { for _, tc := range testCases { t.Run(tc.desc, func(t *testing.T) { - buffer := &bytes.Buffer{} - output = buffer cmd := &Command{Config: testConfig, Args: tc.arguments} + buffer := &bytes.Buffer{} - err := cmd.Execute() + err := cmd.Execute(&reporting.Reporter{Out: buffer}) assert.NoError(t, err) assert.Equal(t, tc.expectedOutput, buffer.String()) @@ -120,11 +120,12 @@ func TestFailingExecute(t *testing.T) { for _, tc := range testCases { t.Run(tc.desc, func(t *testing.T) { cmd := &Command{Config: testConfig, Args: tc.arguments} + buffer := &bytes.Buffer{} - err := cmd.Execute() + err := cmd.Execute(&reporting.Reporter{Out: buffer}) + assert.Empty(t, buffer.String()) assert.EqualError(t, err, tc.expectedError) }) } - } |