github.com/askholme/packer@v0.7.2-0.20140924152349-70d9566a6852/builder/amazon/chroot/step_register_ami_test.go (about)

     1  package chroot
     2  
     3  import (
     4  	"github.com/mitchellh/goamz/ec2"
     5  	"testing"
     6  )
     7  
     8  func testImage() ec2.Image {
     9  	return ec2.Image{
    10  		Id:           "ami-abcd1234",
    11  		Name:         "ami_test_name",
    12  		Architecture: "x86_64",
    13  		KernelId:     "aki-abcd1234",
    14  	}
    15  }
    16  
    17  func TestStepRegisterAmi_buildRegisterOpts_pv(t *testing.T) {
    18  	config := Config{}
    19  	config.AMIName = "test_ami_name"
    20  	config.AMIDescription = "test_ami_description"
    21  	config.AMIVirtType = "paravirtual"
    22  
    23  	image := testImage()
    24  
    25  	blockDevices := []ec2.BlockDeviceMapping{}
    26  
    27  	opts := buildRegisterOpts(&config, &image, blockDevices)
    28  
    29  	expected := config.AMIVirtType
    30  	if opts.VirtType != expected {
    31  		t.Fatalf("Unexpected VirtType value: expected %s got %s\n", expected, opts.VirtType)
    32  	}
    33  
    34  	expected = config.AMIName
    35  	if opts.Name != expected {
    36  		t.Fatalf("Unexpected Name value: expected %s got %s\n", expected, opts.Name)
    37  	}
    38  
    39  	expected = image.KernelId
    40  	if opts.KernelId != expected {
    41  		t.Fatalf("Unexpected KernelId value: expected %s got %s\n", expected, opts.KernelId)
    42  	}
    43  
    44  }
    45  
    46  func TestStepRegisterAmi_buildRegisterOpts_hvm(t *testing.T) {
    47  	config := Config{}
    48  	config.AMIName = "test_ami_name"
    49  	config.AMIDescription = "test_ami_description"
    50  	config.AMIVirtType = "hvm"
    51  
    52  	image := testImage()
    53  
    54  	blockDevices := []ec2.BlockDeviceMapping{}
    55  
    56  	opts := buildRegisterOpts(&config, &image, blockDevices)
    57  
    58  	expected := config.AMIVirtType
    59  	if opts.VirtType != expected {
    60  		t.Fatalf("Unexpected VirtType value: expected %s got %s\n", expected, opts.VirtType)
    61  	}
    62  
    63  	expected = config.AMIName
    64  	if opts.Name != expected {
    65  		t.Fatalf("Unexpected Name value: expected %s got %s\n", expected, opts.Name)
    66  	}
    67  
    68  	expected = ""
    69  	if opts.KernelId != expected {
    70  		t.Fatalf("Unexpected KernelId value: expected %s got %s\n", expected, opts.KernelId)
    71  	}
    72  
    73  }