43 lines
705 B
Go
43 lines
705 B
Go
//go:build linux
|
|
// +build linux
|
|
|
|
package remove
|
|
|
|
import (
|
|
"os"
|
|
"testing"
|
|
|
|
"b612.me/apps/b612/gdu/internal/testdir"
|
|
"b612.me/apps/b612/gdu/pkg/analyze"
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestRemoveFileWithErr(t *testing.T) {
|
|
fin := testdir.CreateTestDir()
|
|
defer fin()
|
|
|
|
err := os.Chmod("test_dir/nested", 0)
|
|
assert.Nil(t, err)
|
|
defer func() {
|
|
err = os.Chmod("test_dir/nested", 0o755)
|
|
assert.Nil(t, err)
|
|
}()
|
|
|
|
dir := &analyze.Dir{
|
|
File: &analyze.File{
|
|
Name: "test_dir",
|
|
},
|
|
BasePath: ".",
|
|
}
|
|
|
|
subdir := &analyze.Dir{
|
|
File: &analyze.File{
|
|
Name: "nested",
|
|
Parent: dir,
|
|
},
|
|
}
|
|
|
|
err = ItemFromDir(dir, subdir)
|
|
assert.Contains(t, err.Error(), "permission denied")
|
|
}
|