github.com/ttysteale/packer@v0.8.2-0.20150708160520-e5f8ea386ed8/builder/parallels/common/driver_mock.go (about) 1 package common 2 3 import "sync" 4 5 type DriverMock struct { 6 sync.Mutex 7 8 DeviceAddCdRomCalled bool 9 DeviceAddCdRomName string 10 DeviceAddCdRomImage string 11 DeviceAddCdRomResult string 12 DeviceAddCdRomErr error 13 14 ImportCalled bool 15 ImportName string 16 ImportSrcPath string 17 ImportDstPath string 18 ImportErr error 19 20 IsRunningName string 21 IsRunningReturn bool 22 IsRunningErr error 23 24 StopName string 25 StopErr error 26 27 PrlctlCalls [][]string 28 PrlctlErrs []error 29 30 VerifyCalled bool 31 VerifyErr error 32 33 VersionCalled bool 34 VersionResult string 35 VersionErr error 36 37 SendKeyScanCodesCalls [][]string 38 SendKeyScanCodesErrs []error 39 40 SetDefaultConfigurationCalled bool 41 SetDefaultConfigurationError error 42 43 ToolsIsoPathCalled bool 44 ToolsIsoPathFlavor string 45 ToolsIsoPathResult string 46 ToolsIsoPathErr error 47 48 MacName string 49 MacReturn string 50 MacError error 51 52 IpAddressMac string 53 IpAddressReturn string 54 IpAddressError error 55 } 56 57 func (d *DriverMock) DeviceAddCdRom(name string, image string) (string, error) { 58 d.DeviceAddCdRomCalled = true 59 d.DeviceAddCdRomName = name 60 d.DeviceAddCdRomImage = image 61 return d.DeviceAddCdRomResult, d.DeviceAddCdRomErr 62 } 63 64 func (d *DriverMock) Import(name, srcPath, dstPath string, reassignMac bool) error { 65 d.ImportCalled = true 66 d.ImportName = name 67 d.ImportSrcPath = srcPath 68 d.ImportDstPath = dstPath 69 return d.ImportErr 70 } 71 72 func (d *DriverMock) IsRunning(name string) (bool, error) { 73 d.Lock() 74 defer d.Unlock() 75 76 d.IsRunningName = name 77 return d.IsRunningReturn, d.IsRunningErr 78 } 79 80 func (d *DriverMock) Stop(name string) error { 81 d.StopName = name 82 return d.StopErr 83 } 84 85 func (d *DriverMock) Prlctl(args ...string) error { 86 d.PrlctlCalls = append(d.PrlctlCalls, args) 87 88 if len(d.PrlctlErrs) >= len(d.PrlctlCalls) { 89 return d.PrlctlErrs[len(d.PrlctlCalls)-1] 90 } 91 return nil 92 } 93 94 func (d *DriverMock) Verify() error { 95 d.VerifyCalled = true 96 return d.VerifyErr 97 } 98 99 func (d *DriverMock) Version() (string, error) { 100 d.VersionCalled = true 101 return d.VersionResult, d.VersionErr 102 } 103 104 func (d *DriverMock) SendKeyScanCodes(name string, scancodes ...string) error { 105 d.SendKeyScanCodesCalls = append(d.SendKeyScanCodesCalls, scancodes) 106 107 if len(d.SendKeyScanCodesErrs) >= len(d.SendKeyScanCodesCalls) { 108 return d.SendKeyScanCodesErrs[len(d.SendKeyScanCodesCalls)-1] 109 } 110 return nil 111 } 112 113 func (d *DriverMock) SetDefaultConfiguration(name string) error { 114 d.SetDefaultConfigurationCalled = true 115 return d.SetDefaultConfigurationError 116 } 117 118 func (d *DriverMock) Mac(name string) (string, error) { 119 d.MacName = name 120 return d.MacReturn, d.MacError 121 } 122 123 func (d *DriverMock) IpAddress(mac string) (string, error) { 124 d.IpAddressMac = mac 125 return d.IpAddressReturn, d.IpAddressError 126 } 127 128 func (d *DriverMock) ToolsIsoPath(flavor string) (string, error) { 129 d.ToolsIsoPathCalled = true 130 d.ToolsIsoPathFlavor = flavor 131 return d.ToolsIsoPathResult, d.ToolsIsoPathErr 132 }