github.phpd.cn/hashicorp/packer@v1.3.2/builder/openstack/builder_test.go (about) 1 package openstack 2 3 import ( 4 "testing" 5 6 "github.com/hashicorp/packer/packer" 7 ) 8 9 func testConfig() map[string]interface{} { 10 return map[string]interface{}{ 11 "username": "foo", 12 "password": "bar", 13 "region": "DFW", 14 "image_name": "foo", 15 "source_image": "foo", 16 "flavor": "foo", 17 "ssh_username": "root", 18 } 19 } 20 21 func TestBuilder_ImplementsBuilder(t *testing.T) { 22 var raw interface{} 23 raw = &Builder{} 24 if _, ok := raw.(packer.Builder); !ok { 25 t.Fatalf("Builder should be a builder") 26 } 27 } 28 29 func TestBuilder_Prepare_BadType(t *testing.T) { 30 b := &Builder{} 31 c := map[string]interface{}{ 32 "password": []string{}, 33 } 34 35 warns, err := b.Prepare(c) 36 if len(warns) > 0 { 37 t.Fatalf("bad: %#v", warns) 38 } 39 if err == nil { 40 t.Fatalf("prepare should fail") 41 } 42 }