get.porter.sh/porter@v1.3.0/pkg/pkgmgmt/client/runner_test.go (about) 1 package client 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/assert" 7 "github.com/stretchr/testify/require" 8 ) 9 10 func TestRunner_Validate(t *testing.T) { 11 r := NewTestRunner(t, "lucky-charms", "cereals", true) 12 13 err := r.Validate() 14 require.NoError(t, err) 15 } 16 17 func TestRunner_Validate_MissingName(t *testing.T) { 18 // Setup failure: empty package name 19 r := NewTestRunner(t, "", "candy", true) 20 21 err := r.Validate() 22 require.Error(t, err) 23 assert.Contains(t, err.Error(), "package name to execute not specified") 24 } 25 26 func TestRunner_Validate_MissingExecutable(t *testing.T) { 27 r := NewTestRunner(t, "mypackage", "packages", true) 28 29 // Setup failure: Don't copy the package binary into the test context 30 err := r.FileSystem.Remove(r.getExecutablePath()) 31 require.NoError(t, err) 32 33 err = r.Validate() 34 require.Error(t, err) 35 assert.Contains(t, err.Error(), "package not found") 36 }