2014-10-28 18:09:22 -04:00
|
|
|
package command
|
|
|
|
|
|
|
|
import (
|
2015-05-23 19:30:45 -04:00
|
|
|
"bytes"
|
2020-10-02 04:49:21 -04:00
|
|
|
"io/ioutil"
|
2014-10-28 22:29:51 -04:00
|
|
|
"path/filepath"
|
2014-10-28 18:09:22 -04:00
|
|
|
"testing"
|
|
|
|
|
2017-04-04 16:39:01 -04:00
|
|
|
"github.com/hashicorp/packer/packer"
|
2020-11-20 13:21:29 -05:00
|
|
|
packersdk "github.com/hashicorp/packer/packer-plugin-sdk/packer"
|
2014-10-28 18:09:22 -04:00
|
|
|
)
|
|
|
|
|
2014-10-28 22:29:51 -04:00
|
|
|
const fixturesDir = "./test-fixtures"
|
|
|
|
|
|
|
|
func fatalCommand(t *testing.T, m Meta) {
|
2020-11-20 13:21:29 -05:00
|
|
|
ui := m.Ui.(*packersdk.BasicUi)
|
2015-05-23 19:30:45 -04:00
|
|
|
out := ui.Writer.(*bytes.Buffer)
|
|
|
|
err := ui.ErrorWriter.(*bytes.Buffer)
|
2014-10-28 22:29:51 -04:00
|
|
|
t.Fatalf(
|
|
|
|
"Bad exit code.\n\nStdout:\n\n%s\n\nStderr:\n\n%s",
|
2015-05-23 19:30:45 -04:00
|
|
|
out.String(),
|
|
|
|
err.String())
|
2014-10-28 22:29:51 -04:00
|
|
|
}
|
|
|
|
|
2015-07-13 22:32:28 -04:00
|
|
|
func outputCommand(t *testing.T, m Meta) (string, string) {
|
2020-11-20 13:21:29 -05:00
|
|
|
ui := m.Ui.(*packersdk.BasicUi)
|
2015-07-13 22:32:28 -04:00
|
|
|
out := ui.Writer.(*bytes.Buffer)
|
|
|
|
err := ui.ErrorWriter.(*bytes.Buffer)
|
|
|
|
return out.String(), err.String()
|
|
|
|
}
|
|
|
|
|
2020-10-02 04:49:21 -04:00
|
|
|
func testFixtureContent(n ...string) string {
|
|
|
|
path := filepath.Join(append([]string{fixturesDir}, n...)...)
|
|
|
|
b, err := ioutil.ReadFile(path)
|
|
|
|
if err != nil {
|
|
|
|
panic(err)
|
|
|
|
}
|
|
|
|
return string(b)
|
|
|
|
}
|
|
|
|
|
2020-07-06 11:01:55 -04:00
|
|
|
func testFixture(n ...string) string {
|
|
|
|
paths := []string{fixturesDir}
|
|
|
|
paths = append(paths, n...)
|
|
|
|
return filepath.Join(paths...)
|
2014-10-28 22:29:51 -04:00
|
|
|
}
|
|
|
|
|
2014-10-28 18:09:22 -04:00
|
|
|
func testMeta(t *testing.T) Meta {
|
2015-05-23 19:30:45 -04:00
|
|
|
var out, err bytes.Buffer
|
|
|
|
|
2014-10-28 18:09:22 -04:00
|
|
|
return Meta{
|
2015-05-29 18:35:55 -04:00
|
|
|
CoreConfig: packer.TestCoreConfig(t),
|
2020-11-20 13:21:29 -05:00
|
|
|
Ui: &packersdk.BasicUi{
|
2015-05-23 19:30:45 -04:00
|
|
|
Writer: &out,
|
|
|
|
ErrorWriter: &err,
|
|
|
|
},
|
2014-10-28 18:09:22 -04:00
|
|
|
}
|
|
|
|
}
|