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