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  }