From 5b66069da08a4206b133a0b688e220720f38cd02 Mon Sep 17 00:00:00 2001 From: Adrien Delorme Date: Thu, 6 Sep 2018 15:52:28 +0200 Subject: [PATCH] tests: remove Ui stubs to use packer.NoopUi to deduplicate code --- provisioner/ansible-local/provisioner_test.go | 7 ++-- provisioner/ansible-local/ui_stub.go | 15 ------- provisioner/ansible/adapter_test.go | 32 +-------------- provisioner/file/provisioner_test.go | 40 ++++++------------- 4 files changed, 18 insertions(+), 76 deletions(-) delete mode 100644 provisioner/ansible-local/ui_stub.go diff --git a/provisioner/ansible-local/provisioner_test.go b/provisioner/ansible-local/provisioner_test.go index e72c6c01a..741bba235 100644 --- a/provisioner/ansible-local/provisioner_test.go +++ b/provisioner/ansible-local/provisioner_test.go @@ -8,11 +8,12 @@ import ( "testing" "fmt" + "os/exec" + "github.com/hashicorp/packer/builder/docker" "github.com/hashicorp/packer/packer" "github.com/hashicorp/packer/provisioner/file" "github.com/hashicorp/packer/template" - "os/exec" ) func TestProvisioner_Impl(t *testing.T) { @@ -132,7 +133,7 @@ func TestProvisionerProvision_PlaybookFiles(t *testing.T) { } comm := &communicatorMock{} - if err := p.Provision(&uiStub{}, comm); err != nil { + if err := p.Provision(new(packer.NoopUi), comm); err != nil { t.Fatalf("err: %s", err) } @@ -166,7 +167,7 @@ func TestProvisionerProvision_PlaybookFilesWithPlaybookDir(t *testing.T) { } comm := &communicatorMock{} - if err := p.Provision(&uiStub{}, comm); err != nil { + if err := p.Provision(new(packer.NoopUi), comm); err != nil { t.Fatalf("err: %s", err) } diff --git a/provisioner/ansible-local/ui_stub.go b/provisioner/ansible-local/ui_stub.go deleted file mode 100644 index 4faa2a215..000000000 --- a/provisioner/ansible-local/ui_stub.go +++ /dev/null @@ -1,15 +0,0 @@ -package ansiblelocal - -type uiStub struct{} - -func (su *uiStub) Ask(string) (string, error) { - return "", nil -} - -func (su *uiStub) Error(string) {} - -func (su *uiStub) Machine(string, ...string) {} - -func (su *uiStub) Message(string) {} - -func (su *uiStub) Say(msg string) {} diff --git a/provisioner/ansible/adapter_test.go b/provisioner/ansible/adapter_test.go index 2ab2d350b..29667cbe2 100644 --- a/provisioner/ansible/adapter_test.go +++ b/provisioner/ansible/adapter_test.go @@ -24,7 +24,7 @@ func TestAdapter_Serve(t *testing.T) { config := &ssh.ServerConfig{} - ui := new(ui) + ui := new(packer.NoopUi) sut := newAdapter(done, &l, config, "", newUi(ui), communicator{}) go func() { @@ -93,36 +93,6 @@ func (a addr) String() string { return "test" } -type ui int - -func (u *ui) Ask(s string) (string, error) { - *u++ - return s, nil -} - -func (u *ui) Say(s string) { - *u++ - log.Println(s) -} - -func (u *ui) Message(s string) { - *u++ - log.Println(s) -} - -func (u *ui) Error(s string) { - *u++ - log.Println(s) -} - -func (u *ui) Machine(s1 string, s2 ...string) { - *u++ - log.Println(s1) - for _, s := range s2 { - log.Println(s) - } -} - type communicator struct{} func (c communicator) Start(*packer.RemoteCmd) error { diff --git a/provisioner/file/provisioner_test.go b/provisioner/file/provisioner_test.go index 175082aae..732bba3ff 100644 --- a/provisioner/file/provisioner_test.go +++ b/provisioner/file/provisioner_test.go @@ -1,6 +1,7 @@ package file import ( + "bytes" "io/ioutil" "os" "path/filepath" @@ -99,27 +100,6 @@ func TestProvisionerPrepare_EmptyDestination(t *testing.T) { } } -type stubUi struct { - sayMessages string -} - -func (su *stubUi) Ask(string) (string, error) { - return "", nil -} - -func (su *stubUi) Error(string) { -} - -func (su *stubUi) Machine(string, ...string) { -} - -func (su *stubUi) Message(string) { -} - -func (su *stubUi) Say(msg string) { - su.sayMessages += msg -} - func TestProvisionerProvision_SendsFile(t *testing.T) { var p Provisioner tf, err := ioutil.TempFile("", "packer") @@ -141,18 +121,21 @@ func TestProvisionerProvision_SendsFile(t *testing.T) { t.Fatalf("err: %s", err) } - ui := &stubUi{} + b := bytes.NewBuffer(nil) + ui := &packer.BasicUi{ + Writer: b, + } comm := &packer.MockCommunicator{} err = p.Provision(ui, comm) if err != nil { t.Fatalf("should successfully provision: %s", err) } - if !strings.Contains(ui.sayMessages, tf.Name()) { + if !strings.Contains(b.String(), tf.Name()) { t.Fatalf("should print source filename") } - if !strings.Contains(ui.sayMessages, "something") { + if !strings.Contains(b.String(), "something") { t.Fatalf("should print destination filename") } @@ -197,18 +180,21 @@ func TestProvisionDownloadMkdirAll(t *testing.T) { if err := p.Prepare(config); err != nil { t.Fatalf("err: %s", err) } - ui := &stubUi{} + b := bytes.NewBuffer(nil) + ui := &packer.BasicUi{ + Writer: b, + } comm := &packer.MockCommunicator{} err = p.ProvisionDownload(ui, comm) if err != nil { t.Fatalf("should successfully provision: %s", err) } - if !strings.Contains(ui.sayMessages, tf.Name()) { + if !strings.Contains(b.String(), tf.Name()) { t.Fatalf("should print source filename") } - if !strings.Contains(ui.sayMessages, "something") { + if !strings.Contains(b.String(), "something") { t.Fatalf("should print destination filename") }