diff options
| author | Olivier Mengué <olivier.mengue@gmail.com> | 2023-10-08 17:51:00 +0200 |
|---|---|---|
| committer | Gopher Robot <gobot@golang.org> | 2023-10-11 20:20:55 +0000 |
| commit | 09aada24aa156e0f754688487088badd969caad8 (patch) | |
| tree | ee0a7f490703fbfc0c51a287f7119a73ec35d7e5 /src/testing | |
| parent | 7241fee9b06da568251617ce3a715fae3e9f2881 (diff) | |
| download | go-09aada24aa156e0f754688487088badd969caad8.tar.xz | |
testing/fstest: MapFS: set perm 0555 on synthetized dirs
As MapFS ignores filemodes and always grant read and traverse access on
directories, let's make synthetized directory entries to expose filemode
0555 instead of 0000.
Fixes #63468.
Change-Id: I5d64a6bf2f2ac6082ca5dde55b3062669fb50b8d
Reviewed-on: https://go-review.googlesource.com/c/go/+/534075
Reviewed-by: Ian Lance Taylor <iant@google.com>
Auto-Submit: Ian Lance Taylor <iant@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Diffstat (limited to 'src/testing')
| -rw-r--r-- | src/testing/fstest/mapfs.go | 4 | ||||
| -rw-r--r-- | src/testing/fstest/mapfs_test.go | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/src/testing/fstest/mapfs.go b/src/testing/fstest/mapfs.go index a0b1f65668..b3fc0c8ad7 100644 --- a/src/testing/fstest/mapfs.go +++ b/src/testing/fstest/mapfs.go @@ -98,14 +98,14 @@ func (fsys MapFS) Open(name string) (fs.File, error) { delete(need, fi.name) } for name := range need { - list = append(list, mapFileInfo{name, &MapFile{Mode: fs.ModeDir}}) + list = append(list, mapFileInfo{name, &MapFile{Mode: fs.ModeDir | 0555}}) } sort.Slice(list, func(i, j int) bool { return list[i].name < list[j].name }) if file == nil { - file = &MapFile{Mode: fs.ModeDir} + file = &MapFile{Mode: fs.ModeDir | 0555} } return &mapDir{name, mapFileInfo{elem, file}, list, 0}, nil } diff --git a/src/testing/fstest/mapfs_test.go b/src/testing/fstest/mapfs_test.go index c8d29283b2..c64dc8db5a 100644 --- a/src/testing/fstest/mapfs_test.go +++ b/src/testing/fstest/mapfs_test.go @@ -16,7 +16,7 @@ func TestMapFS(t *testing.T) { "hello": {Data: []byte("hello, world\n")}, "fortune/k/ken.txt": {Data: []byte("If a program is too slow, it must have a loop.\n")}, } - if err := TestFS(m, "hello", "fortune/k/ken.txt"); err != nil { + if err := TestFS(m, "hello", "fortune", "fortune/k", "fortune/k/ken.txt"); err != nil { t.Fatal(err) } } @@ -37,7 +37,7 @@ func TestMapFSChmodDot(t *testing.T) { }) want := ` .: drwxrwxrwx -a: d--------- +a: dr-xr-xr-x a/b.txt: -rw-rw-rw- `[1:] got := buf.String() |
