blob: 69bb60a788c82952f379867a42aab879672ae38d [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); 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
}