github.com/mmcquillan/packer@v1.1.1-0.20171009221028-c85cf0483a5d/builder/triton/source_machine_config_test.go (about) 1 package triton 2 3 import ( 4 "testing" 5 ) 6 7 func TestSourceMachineConfig_Prepare(t *testing.T) { 8 sc := testSourceMachineConfig(t) 9 errs := sc.Prepare(nil) 10 if errs != nil { 11 t.Fatalf("should not error: %#v", sc) 12 } 13 14 sc = testSourceMachineConfig(t) 15 sc.MachineName = "" 16 errs = sc.Prepare(nil) 17 if errs != nil { 18 t.Fatalf("should not error: %#v", sc) 19 } 20 21 sc = testSourceMachineConfig(t) 22 sc.MachinePackage = "" 23 errs = sc.Prepare(nil) 24 if errs == nil { 25 t.Fatalf("should error: %#v", sc) 26 } 27 28 sc = testSourceMachineConfig(t) 29 sc.MachineImage = "" 30 errs = sc.Prepare(nil) 31 if errs == nil { 32 t.Fatalf("should error: %#v", sc) 33 } 34 } 35 36 func testSourceMachineConfig(t *testing.T) SourceMachineConfig { 37 return SourceMachineConfig{ 38 MachineName: "test-machine", 39 MachinePackage: "test-package", 40 MachineImage: "test-image", 41 MachineNetworks: []string{ 42 "test-network-1", 43 "test-network-2", 44 }, 45 MachineMetadata: map[string]string{ 46 "test-metadata-key1": "test-metadata-value1", 47 "test-metadata-key2": "test-metadata-value2", 48 "test-metadata-key3": "test-metadata-value3", 49 }, 50 MachineTags: map[string]string{ 51 "test-tags-key1": "test-tags-value1", 52 "test-tags-key2": "test-tags-value2", 53 "test-tags-key3": "test-tags-value3", 54 }, 55 MachineFirewallEnabled: false, 56 } 57 }