package vmx import ( "io/ioutil" "os" "reflect" "testing" ) func TestBuilderPrepare_FloppyFiles(t *testing.T) { var b Builder tf, err := ioutil.TempFile("", "packer") if err != nil { t.Fatalf("err: %s", err) } tf.Close() defer os.Remove(tf.Name()) config := testConfig(t) config["source_path"] = tf.Name() delete(config, "floppy_files") warns, err := b.Prepare(config) if len(warns) > 0 { t.Fatalf("bad: %#v", warns) } if err != nil { t.Fatalf("bad err: %s", err) } if len(b.config.FloppyFiles) != 0 { t.Fatalf("bad: %#v", b.config.FloppyFiles) } config["floppy_files"] = []string{"foo", "bar"} b = Builder{} warns, err = b.Prepare(config) if len(warns) > 0 { t.Fatalf("bad: %#v", warns) } if err != nil { t.Fatalf("should not have error: %s", err) } expected := []string{"foo", "bar"} if !reflect.DeepEqual(b.config.FloppyFiles, expected) { t.Fatalf("bad: %#v", b.config.FloppyFiles) } }