github.com/ActiveState/cli@v0.0.0-20240508170324-6801f60cd051/internal/fileutils/fileutils_lin_mac_test.go (about)

     1  //go:build !windows
     2  // +build !windows
     3  
     4  package fileutils
     5  
     6  import (
     7  	"os"
     8  	"path/filepath"
     9  	"testing"
    10  
    11  	"github.com/stretchr/testify/assert"
    12  	"github.com/stretchr/testify/require"
    13  )
    14  
    15  func TestSymlink(t *testing.T) {
    16  	td, err := os.MkdirTemp("", "")
    17  	require.NoError(t, err)
    18  	target := filepath.Join(td, "target")
    19  	err = Touch(target)
    20  	require.NoError(t, err)
    21  	symlink := filepath.Join(td, "symlink")
    22  	err = os.Symlink(target, symlink)
    23  	require.NoError(t, err)
    24  
    25  	assert.True(t, IsSymlink(symlink), "expected symlink")
    26  	assert.False(t, IsSymlink(target), "expected no symlink")
    27  }