diff --git a/command/init_test.go b/command/init_test.go index c1cc56a37e..2db54b0477 100644 --- a/command/init_test.go +++ b/command/init_test.go @@ -32,6 +32,42 @@ func TestInit(t *testing.T) { } } +func TestInit_cwd(t *testing.T) { + dir := tempDir(t) + if err := os.MkdirAll(dir, 0755); err != nil { + t.Fatalf("err: %s", err) + } + + // Change to the temporary directory + cwd, err := os.Getwd() + if err != nil { + t.Fatalf("err: %s", err) + } + if err := os.Chdir(dir); err != nil { + t.Fatalf("err: %s", err) + } + defer os.Chdir(cwd) + + ui := new(cli.MockUi) + c := &InitCommand{ + Meta: Meta{ + ContextOpts: testCtxConfig(testProvider()), + Ui: ui, + }, + } + + args := []string{ + testFixturePath("init"), + } + if code := c.Run(args); code != 0 { + t.Fatalf("bad: \n%s", ui.ErrorWriter.String()) + } + + if _, err := os.Stat("hello.tf"); err != nil { + t.Fatalf("err: %s", err) + } +} + func TestInit_multipleArgs(t *testing.T) { ui := new(cli.MockUi) c := &InitCommand{