From dc74c2bbddffc8e4d9891ef674874a76d2bd4a29 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Wed, 3 Sep 2014 21:27:43 -0700 Subject: [PATCH] builder/amazon: tests --- builder/amazon/common/block_device_test.go | 63 ++++++++++++---------- 1 file changed, 36 insertions(+), 27 deletions(-) diff --git a/builder/amazon/common/block_device_test.go b/builder/amazon/common/block_device_test.go index 2e671e3d6..838b23aec 100644 --- a/builder/amazon/common/block_device_test.go +++ b/builder/amazon/common/block_device_test.go @@ -7,38 +7,47 @@ import ( ) func TestBlockDevice(t *testing.T) { - ec2Mapping := []ec2.BlockDeviceMapping{ - ec2.BlockDeviceMapping{ - DeviceName: "/dev/sdb", - VirtualName: "ephemeral0", - SnapshotId: "snap-1234", - VolumeType: "standard", - VolumeSize: 8, - DeleteOnTermination: true, - IOPS: 1000, + cases := []struct { + Config *BlockDevice + Result *ec2.BlockDeviceMapping + }{ + { + Config: &BlockDevice{ + DeviceName: "/dev/sdb", + VirtualName: "ephemeral0", + SnapshotId: "snap-1234", + VolumeType: "standard", + VolumeSize: 8, + DeleteOnTermination: true, + IOPS: 1000, + }, + + Result: &ec2.BlockDeviceMapping{ + DeviceName: "/dev/sdb", + VirtualName: "ephemeral0", + SnapshotId: "snap-1234", + VolumeType: "standard", + VolumeSize: 8, + DeleteOnTermination: true, + IOPS: 1000, + }, }, } - blockDevice := BlockDevice{ - DeviceName: "/dev/sdb", - VirtualName: "ephemeral0", - SnapshotId: "snap-1234", - VolumeType: "standard", - VolumeSize: 8, - DeleteOnTermination: true, - IOPS: 1000, - } + for _, tc := range cases { + blockDevices := BlockDevices{ + AMIMappings: []BlockDevice{*tc.Config}, + LaunchMappings: []BlockDevice{*tc.Config}, + } - blockDevices := BlockDevices{ - AMIMappings: []BlockDevice{blockDevice}, - LaunchMappings: []BlockDevice{blockDevice}, - } + expected := []ec2.BlockDeviceMapping{*tc.Result} - if !reflect.DeepEqual(ec2Mapping, blockDevices.BuildAMIDevices()) { - t.Fatalf("bad: %#v", ec2Mapping) - } + if !reflect.DeepEqual(expected, blockDevices.BuildAMIDevices()) { + t.Fatalf("bad: %#v", expected) + } - if !reflect.DeepEqual(ec2Mapping, blockDevices.BuildLaunchDevices()) { - t.Fatalf("bad: %#v", ec2Mapping) + if !reflect.DeepEqual(expected, blockDevices.BuildLaunchDevices()) { + t.Fatalf("bad: %#v", expected) + } } }