github.com/jenkins-x/jx-api@v0.0.24/pkg/util/files_test.go (about)

     1  package util_test
     2  
     3  import (
     4  	"io/ioutil"
     5  	"os"
     6  	"path/filepath"
     7  	"testing"
     8  
     9  	"github.com/jenkins-x/jx-api/pkg/util"
    10  	"github.com/stretchr/testify/assert"
    11  	"github.com/stretchr/testify/require"
    12  )
    13  
    14  func Test_FileExists_for_non_existing_file_returns_false(t *testing.T) {
    15  	exists, err := util.FileExists("/foo/bar")
    16  	assert.NoError(t, err)
    17  	assert.False(t, exists)
    18  }
    19  
    20  func Test_FileExists_for_existing_file_returns_true(t *testing.T) {
    21  	tmpDir, err := ioutil.TempDir("", "Test_FileExists_for_existing_file_returns_true")
    22  	require.NoError(t, err, "failed to create temporary directory")
    23  	defer func() {
    24  		_ = os.RemoveAll(tmpDir)
    25  	}()
    26  
    27  	data := []byte("hello\nworld\n")
    28  	testFile := filepath.Join(tmpDir, "hello.txt")
    29  	err = ioutil.WriteFile(testFile, data, 0600)
    30  	require.NoError(t, err, "failed to create test file %s", testFile)
    31  
    32  	exists, err := util.FileExists(testFile)
    33  	assert.NoError(t, err)
    34  	assert.True(t, exists)
    35  }
    36  
    37  func Test_FileExists_for_existing_directory_returns_false(t *testing.T) {
    38  	tmpDir, err := ioutil.TempDir("", "Test_FileExists_for_existing_file_returns_true")
    39  	require.NoError(t, err, "failed to create temporary directory")
    40  	defer func() {
    41  		_ = os.RemoveAll(tmpDir)
    42  	}()
    43  
    44  	exists, err := util.FileExists(tmpDir)
    45  	assert.NoError(t, err)
    46  	assert.False(t, exists)
    47  }