From 542fbf394756fef62d3ffe49827644eb14fba03e Mon Sep 17 00:00:00 2001 From: Evan Powell Date: Thu, 30 Jun 2016 14:58:07 -0500 Subject: [PATCH 1/2] Add new interface method to the 'none' communicator --- communicator/none/communicator.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/communicator/none/communicator.go b/communicator/none/communicator.go index d903f1c90..267c8c6c6 100644 --- a/communicator/none/communicator.go +++ b/communicator/none/communicator.go @@ -38,3 +38,7 @@ func (c *comm) UploadDir(dst string, src string, excl []string) error { func (c *comm) Download(path string, output io.Writer) error { return errors.New("Download is not implemented when communicator = 'none'") } + +func (c *comm) DownloadDir(dst string, src string, excl []string) error { + return errors.New("DownloadDir is not implemented when communicator = 'none'") +} From 21373a0568c43d6cdf2c160f8236195b5a2cf27c Mon Sep 17 00:00:00 2001 From: Evan Powell Date: Thu, 30 Jun 2016 16:17:22 -0500 Subject: [PATCH 2/2] Test that null communicator conforms to interface --- communicator/none/communicator_test.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 communicator/none/communicator_test.go diff --git a/communicator/none/communicator_test.go b/communicator/none/communicator_test.go new file mode 100644 index 000000000..fd5c6b13c --- /dev/null +++ b/communicator/none/communicator_test.go @@ -0,0 +1,16 @@ +package none + +import ( + "testing" + + "github.com/mitchellh/packer/packer" +) + +func TestCommIsCommunicator(t *testing.T) { + var raw interface{} + raw = &comm{} + if _, ok := raw.(packer.Communicator); !ok { + t.Fatalf("comm must be a communicator") + } +} +