github.com/daniellockard/packer@v0.7.6-0.20141210173435-5a9390934716/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 ToolsIsoPathCalled bool 41 ToolsIsoPathFlavor string 42 ToolsIsoPathResult string 43 ToolsIsoPathErr error 44 45 MacName string 46 MacReturn string 47 MacError error 48 49 IpAddressMac string 50 IpAddressReturn string 51 IpAddressError error 52 } 53 54 func (d *DriverMock) DeviceAddCdRom(name string, image string) (string, error) { 55 d.DeviceAddCdRomCalled = true 56 d.DeviceAddCdRomName = name 57 d.DeviceAddCdRomImage = image 58 return d.DeviceAddCdRomResult, d.DeviceAddCdRomErr 59 } 60 61 func (d *DriverMock) Import(name, srcPath, dstPath string, reassignMac bool) error { 62 d.ImportCalled = true 63 d.ImportName = name 64 d.ImportSrcPath = srcPath 65 d.ImportDstPath = dstPath 66 return d.ImportErr 67 } 68 69 func (d *DriverMock) IsRunning(name string) (bool, error) { 70 d.Lock() 71 defer d.Unlock() 72 73 d.IsRunningName = name 74 return d.IsRunningReturn, d.IsRunningErr 75 } 76 77 func (d *DriverMock) Stop(name string) error { 78 d.StopName = name 79 return d.StopErr 80 } 81 82 func (d *DriverMock) Prlctl(args ...string) error { 83 d.PrlctlCalls = append(d.PrlctlCalls, args) 84 85 if len(d.PrlctlErrs) >= len(d.PrlctlCalls) { 86 return d.PrlctlErrs[len(d.PrlctlCalls)-1] 87 } 88 return nil 89 } 90 91 func (d *DriverMock) Verify() error { 92 d.VerifyCalled = true 93 return d.VerifyErr 94 } 95 96 func (d *DriverMock) Version() (string, error) { 97 d.VersionCalled = true 98 return d.VersionResult, d.VersionErr 99 } 100 101 func (d *DriverMock) SendKeyScanCodes(name string, scancodes ...string) error { 102 d.SendKeyScanCodesCalls = append(d.SendKeyScanCodesCalls, scancodes) 103 104 if len(d.SendKeyScanCodesErrs) >= len(d.SendKeyScanCodesCalls) { 105 return d.SendKeyScanCodesErrs[len(d.SendKeyScanCodesCalls)-1] 106 } 107 return nil 108 } 109 110 func (d *DriverMock) Mac(name string) (string, error) { 111 d.MacName = name 112 return d.MacReturn, d.MacError 113 } 114 115 func (d *DriverMock) IpAddress(mac string) (string, error) { 116 d.IpAddressMac = mac 117 return d.IpAddressReturn, d.IpAddressError 118 } 119 120 func (d *DriverMock) ToolsIsoPath(flavor string) (string, error) { 121 d.ToolsIsoPathCalled = true 122 d.ToolsIsoPathFlavor = flavor 123 return d.ToolsIsoPathResult, d.ToolsIsoPathErr 124 }