Skip to content

Commit e8329cc

Browse files
committed
Add Git runbook run tests
Fix existing tests
1 parent 19dceb8 commit e8329cc

File tree

2 files changed

+389
-19
lines changed

2 files changed

+389
-19
lines changed

pkg/cmd/runbook/run/run.go

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package run
22

33
import (
44
"encoding/json"
5+
"errors"
56
"fmt"
67
"io"
78
"math"
@@ -206,7 +207,7 @@ func runbookRun(cmd *cobra.Command, f factory.Factory, flags *RunFlags) error {
206207
return err
207208
}
208209

209-
project, err := selectProject(octopus, cmd.OutOrStdout(), f.Ask, flags.Project.Value)
210+
project, err := selectProject(octopus, f, flags.Project.Value)
210211

211212
if err != nil {
212213
return err
@@ -487,19 +488,24 @@ func runGitRunbook(cmd *cobra.Command, f factory.Factory, flags *RunFlags, octop
487488
return nil
488489
}
489490

490-
func selectProject(octopus *octopusApiClient.Client, stdout io.Writer, asker question.Asker, projectName string) (*projects.Project, error) {
491+
func selectProject(octopus *octopusApiClient.Client, f factory.Factory, projectName string) (*projects.Project, error) {
491492
if projectName == "" {
492-
selectedProject, err := selectors.Project("Select project", octopus, asker)
493-
if err != nil {
494-
return nil, err
493+
if f.IsPromptEnabled() {
494+
selectedProject, err := selectors.Project("Select project", octopus, f.Ask)
495+
if err != nil {
496+
return nil, err
497+
}
498+
return selectedProject, nil
499+
} else {
500+
// Project name not provided and not asking questions so error out
501+
return nil, errors.New("project must be specified")
495502
}
496-
return selectedProject, nil
497503
} else { // project name is already provided, fetch the object because it's needed for further questions
498504
selectedProject, err := selectors.FindProject(octopus, projectName)
499505
if err != nil {
500506
return nil, err
501507
}
502-
_, _ = fmt.Fprintf(stdout, "Project %s\n", output.Cyan(selectedProject.Name))
508+
503509
return selectedProject, nil
504510
}
505511
}

0 commit comments

Comments
 (0)