summaryrefslogtreecommitdiff
path: root/vendor/github.com/mitchellh/packer/builder/lxd/builder_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/mitchellh/packer/builder/lxd/builder_test.go')
-rw-r--r--vendor/github.com/mitchellh/packer/builder/lxd/builder_test.go77
1 files changed, 77 insertions, 0 deletions
diff --git a/vendor/github.com/mitchellh/packer/builder/lxd/builder_test.go b/vendor/github.com/mitchellh/packer/builder/lxd/builder_test.go
new file mode 100644
index 00000000..b2ea70e5
--- /dev/null
+++ b/vendor/github.com/mitchellh/packer/builder/lxd/builder_test.go
@@ -0,0 +1,77 @@
+package lxd
+
+import (
+ "os"
+ "testing"
+
+ "github.com/hashicorp/packer/packer"
+)
+
+func testConfig() map[string]interface{} {
+ return map[string]interface{}{
+ "output_image": "foo",
+ "image": "bar",
+ }
+}
+
+func TestBuilder_Foo(t *testing.T) {
+ if os.Getenv("PACKER_ACC") == "" {
+ t.Skip("This test is only run with PACKER_ACC=1")
+ }
+}
+
+func TestBuilderPrepare_ConfigFile(t *testing.T) {
+ var b Builder
+ // Good
+ config := testConfig()
+ warnings, err := b.Prepare(config)
+ if len(warnings) > 0 {
+ t.Fatalf("bad: %#v", warnings)
+ }
+ if err != nil {
+ t.Fatalf("should not have error: %s", err)
+ }
+
+ // Good, remote image
+ config = testConfig()
+ config["image"] = "remote:bar"
+ warnings, err = b.Prepare(config)
+ if len(warnings) > 0 {
+ t.Fatalf("bad: %#v", warnings)
+ }
+ if err != nil {
+ t.Fatalf("should not have error: %s", err)
+ }
+
+ // Good, remote output image
+ config = testConfig()
+ config["output_image"] = "remote:foo"
+ warnings, err = b.Prepare(config)
+ if len(warnings) > 0 {
+ t.Fatalf("bad: %#v", warnings)
+ }
+ if err != nil {
+ t.Fatalf("should not have error: %s", err)
+ }
+
+ // Bad, missing image name
+ config = testConfig()
+ delete(config, "image")
+ b = Builder{}
+ warnings, err = b.Prepare(config)
+ if len(warnings) > 0 {
+ t.Fatalf("bad: %#v", warnings)
+ }
+ if err == nil {
+ t.Fatalf("should have error")
+ }
+
+}
+
+func TestBuilder_ImplementsBuilder(t *testing.T) {
+ var raw interface{}
+ raw = &Builder{}
+ if _, ok := raw.(packer.Builder); !ok {
+ t.Fatalf("Builder should be a builder")
+ }
+}