| package command |
| |
| import ( |
| "strings" |
| "testing" |
| |
| "github.com/mitchellh/cli" |
| ) |
| |
| // More thorough tests for providers mirror can be found in the e2etest |
| func TestProvidersMirror(t *testing.T) { |
| // noop example |
| t.Run("noop", func(t *testing.T) { |
| c := &ProvidersMirrorCommand{} |
| code := c.Run([]string{"."}) |
| if code != 0 { |
| t.Fatalf("wrong exit code. expected 0, got %d", code) |
| } |
| }) |
| |
| t.Run("missing arg error", func(t *testing.T) { |
| ui := new(cli.MockUi) |
| c := &ProvidersMirrorCommand{ |
| Meta: Meta{Ui: ui}, |
| } |
| code := c.Run([]string{}) |
| if code != 1 { |
| t.Fatalf("wrong exit code. expected 1, got %d", code) |
| } |
| |
| got := ui.ErrorWriter.String() |
| if !strings.Contains(got, "Error: No output directory specified") { |
| t.Fatalf("missing directory error from output, got:\n%s\n", got) |
| } |
| }) |
| } |