blob: 2be29c8b4ad6b95f9451ebe7e8d7456f55187387 [file] [log] [blame]
package fileutils
import (
"io/ioutil"
"os"
"path/filepath"
"runtime"
"testing"
)
func TestCopypathSymlinks(t *testing.T) {
if runtime.GOOS == "windows" {
t.Skip("no symlinks on windows y'all")
}
dst := mktemp(t)
defer RemoveAll(dst)
src := filepath.Join("_testdata", "copyfile")
if err := Copypath(dst, src, true, false); err != nil {
t.Fatalf("copypath(%s, %s): %v", dst, src, err)
}
res, err := os.Readlink(filepath.Join(dst, "a", "rick"))
if err != nil {
t.Fatal(err)
}
if res != "/never/going/to/give/you/up" {
t.Fatalf("target == %s, expected /never/going/to/give/you/up", res)
}
}
func mktemp(t *testing.T) string {
s, err := ioutil.TempDir("", "fileutils_test")
if err != nil {
t.Fatal(err)
}
return s
}