github.com/jerryclinesmith/packer@v0.3.7/packer/provisioner_mock.go (about)

     1  package packer
     2  
     3  // MockProvisioner is an implementation of Provisioner that can be
     4  // used for tests.
     5  type MockProvisioner struct {
     6  	ProvFunc func() error
     7  
     8  	PrepCalled   bool
     9  	PrepConfigs  []interface{}
    10  	ProvCalled   bool
    11  	ProvUi       Ui
    12  	CancelCalled bool
    13  }
    14  
    15  func (t *MockProvisioner) Prepare(configs ...interface{}) error {
    16  	t.PrepCalled = true
    17  	t.PrepConfigs = configs
    18  	return nil
    19  }
    20  
    21  func (t *MockProvisioner) Provision(ui Ui, comm Communicator) error {
    22  	t.ProvCalled = true
    23  	t.ProvUi = ui
    24  
    25  	if t.ProvFunc == nil {
    26  		return nil
    27  	}
    28  
    29  	return t.ProvFunc()
    30  }
    31  
    32  func (t *MockProvisioner) Cancel() {
    33  	t.CancelCalled = true
    34  }