path_test.go 655 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. package util
  2. import (
  3. "io/ioutil"
  4. "os"
  5. "path/filepath"
  6. "testing"
  7. "github.com/stretchr/testify/assert"
  8. )
  9. func TestReadLink(t *testing.T) {
  10. dir, err := ioutil.TempDir("", "go-zero")
  11. symLink := filepath.Join(dir, "test")
  12. pwd, err := os.Getwd()
  13. assertError(err, t)
  14. err = os.Symlink(pwd, symLink)
  15. assertError(err, t)
  16. t.Run("linked", func(t *testing.T) {
  17. ret, err := ReadLink(symLink)
  18. assert.Nil(t, err)
  19. assert.Equal(t, pwd, ret)
  20. })
  21. t.Run("unlink", func(t *testing.T) {
  22. ret, err := ReadLink(pwd)
  23. assert.Nil(t, err)
  24. assert.Equal(t, pwd, ret)
  25. })
  26. }
  27. func assertError(err error, t *testing.T) {
  28. if err != nil {
  29. t.Fatal(err)
  30. }
  31. }