github.com/rahart/packer@v0.12.2-0.20161229105310-282bb6ad370f/builder/parallels/common/step_upload_version_test.go (about)

     1  package common
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/mitchellh/multistep"
     7  	"github.com/mitchellh/packer/packer"
     8  )
     9  
    10  func TestStepUploadVersion_impl(t *testing.T) {
    11  	var _ multistep.Step = new(StepUploadVersion)
    12  }
    13  
    14  func TestStepUploadVersion(t *testing.T) {
    15  	state := testState(t)
    16  	step := new(StepUploadVersion)
    17  	step.Path = "foopath"
    18  
    19  	comm := new(packer.MockCommunicator)
    20  	state.Put("communicator", comm)
    21  
    22  	driver := state.Get("driver").(*DriverMock)
    23  	driver.VersionResult = "foo"
    24  
    25  	// Test the run
    26  	if action := step.Run(state); action != multistep.ActionContinue {
    27  		t.Fatalf("bad action: %#v", action)
    28  	}
    29  	if _, ok := state.GetOk("error"); ok {
    30  		t.Fatal("should NOT have error")
    31  	}
    32  
    33  	// Verify
    34  	if comm.UploadPath != "foopath" {
    35  		t.Fatalf("bad: %#v", comm.UploadPath)
    36  	}
    37  	if comm.UploadData != "foo" {
    38  		t.Fatalf("upload data bad: %#v", comm.UploadData)
    39  	}
    40  }
    41  
    42  func TestStepUploadVersion_noPath(t *testing.T) {
    43  	state := testState(t)
    44  	step := new(StepUploadVersion)
    45  	step.Path = ""
    46  
    47  	comm := new(packer.MockCommunicator)
    48  	state.Put("communicator", comm)
    49  
    50  	// Test the run
    51  	if action := step.Run(state); action != multistep.ActionContinue {
    52  		t.Fatalf("bad action: %#v", action)
    53  	}
    54  	if _, ok := state.GetOk("error"); ok {
    55  		t.Fatal("should NOT have error")
    56  	}
    57  
    58  	// Verify
    59  	if comm.UploadCalled {
    60  		t.Fatal("bad")
    61  	}
    62  }