github.com/homburg/packer@v0.6.1-0.20140528012651-1dcaf1716848/builder/parallels/common/driver_mock.go (about) 1 package common 2 3 import "sync" 4 5 type DriverMock struct { 6 sync.Mutex 7 8 ImportCalled bool 9 ImportName string 10 ImportSrcPath string 11 ImportDstPath string 12 ImportErr error 13 14 IsRunningName string 15 IsRunningReturn bool 16 IsRunningErr error 17 18 StopName string 19 StopErr error 20 21 PrlctlCalls [][]string 22 PrlctlErrs []error 23 24 VerifyCalled bool 25 VerifyErr error 26 27 VersionCalled bool 28 VersionResult string 29 VersionErr error 30 31 SendKeyScanCodesCalls [][]string 32 SendKeyScanCodesErrs []error 33 34 MacName string 35 MacReturn string 36 MacError error 37 38 IpAddressMac string 39 IpAddressReturn string 40 IpAddressError error 41 } 42 43 func (d *DriverMock) Import(name, srcPath, dstPath string) error { 44 d.ImportCalled = true 45 d.ImportName = name 46 d.ImportSrcPath = srcPath 47 d.ImportDstPath = dstPath 48 return d.ImportErr 49 } 50 51 func (d *DriverMock) IsRunning(name string) (bool, error) { 52 d.Lock() 53 defer d.Unlock() 54 55 d.IsRunningName = name 56 return d.IsRunningReturn, d.IsRunningErr 57 } 58 59 func (d *DriverMock) Stop(name string) error { 60 d.StopName = name 61 return d.StopErr 62 } 63 64 func (d *DriverMock) Prlctl(args ...string) error { 65 d.PrlctlCalls = append(d.PrlctlCalls, args) 66 67 if len(d.PrlctlErrs) >= len(d.PrlctlCalls) { 68 return d.PrlctlErrs[len(d.PrlctlCalls)-1] 69 } 70 return nil 71 } 72 73 func (d *DriverMock) Verify() error { 74 d.VerifyCalled = true 75 return d.VerifyErr 76 } 77 78 func (d *DriverMock) Version() (string, error) { 79 d.VersionCalled = true 80 return d.VersionResult, d.VersionErr 81 } 82 83 func (d *DriverMock) SendKeyScanCodes(name string, scancodes ...string) error { 84 d.SendKeyScanCodesCalls = append(d.SendKeyScanCodesCalls, scancodes) 85 86 if len(d.SendKeyScanCodesErrs) >= len(d.SendKeyScanCodesCalls) { 87 return d.SendKeyScanCodesErrs[len(d.SendKeyScanCodesCalls)-1] 88 } 89 return nil 90 } 91 92 func (d *DriverMock) Mac(name string) (string, error) { 93 d.MacName = name 94 return d.MacReturn, d.MacError 95 } 96 97 func (d *DriverMock) IpAddress(mac string) (string, error) { 98 d.IpAddressMac = mac 99 return d.IpAddressReturn, d.IpAddressError 100 }