path_test.go 669 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. package pathx
  2. import (
  3. "os"
  4. "path/filepath"
  5. "testing"
  6. "github.com/stretchr/testify/assert"
  7. )
  8. func TestReadLink(t *testing.T) {
  9. dir, err := os.CreateTemp("", "go-zero")
  10. assert.Nil(t, err)
  11. symLink := filepath.Join(dir.Name(), "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. }