package filesystem import ( "fmt" "os" "path" "testing" "github.com/stretchr/testify/assert" ) // temporary function until upgrade to 1.16 func tempDir(t *testing.T) string { tmpDir, err := os.MkdirTemp("", "dir") assert.NoError(t, err, "MkdirTemp should not fail") return tmpDir } func Test_movePath_shouldFailIfOriginalPathDoesntExist(t *testing.T) { tmpDir := tempDir(t) missingPath := path.Join(tmpDir, "missing") targetPath := path.Join(tmpDir, "target") defer os.RemoveAll(tmpDir) err := MoveDirectory(missingPath, targetPath) assert.Error(t, err, "move directory should fail when target path exists") } func Test_movePath_shouldFailIfTargetPathDoesExist(t *testing.T) { originalPath := tempDir(t) missingPath := tempDir(t) defer os.RemoveAll(originalPath) defer os.RemoveAll(missingPath) err := MoveDirectory(originalPath, missingPath) assert.Error(t, err, "move directory should fail when target path exists") } func Test_movePath_success(t *testing.T) { originalPath := tempDir(t) defer os.RemoveAll(originalPath) err := MoveDirectory(originalPath, fmt.Sprintf("%s-old", originalPath)) assert.NoError(t, err) }