diff options
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.go | 77 |
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") + } +} |