github.com/homburg/packer@v0.6.1-0.20140528012651-1dcaf1716848/packer/artifact_mock.go (about)

     1  package packer
     2  
     3  // MockArtifact is an implementation of Artifact that can be used for tests.
     4  type MockArtifact struct {
     5  	BuilderIdValue string
     6  	FilesValue     []string
     7  	IdValue        string
     8  	DestroyCalled  bool
     9  }
    10  
    11  func (a *MockArtifact) BuilderId() string {
    12  	if a.BuilderIdValue == "" {
    13  		return "bid"
    14  	}
    15  
    16  	return a.BuilderIdValue
    17  }
    18  
    19  func (a *MockArtifact) Files() []string {
    20  	if a.FilesValue == nil {
    21  		return []string{"a", "b"}
    22  	}
    23  
    24  	return a.FilesValue
    25  }
    26  
    27  func (a *MockArtifact) Id() string {
    28  	id := a.IdValue
    29  	if id == "" {
    30  		id = "id"
    31  	}
    32  
    33  	return id
    34  }
    35  
    36  func (*MockArtifact) String() string {
    37  	return "string"
    38  }
    39  
    40  func (a *MockArtifact) Destroy() error {
    41  	a.DestroyCalled = true
    42  	return nil
    43  }