From ec4c9f2adb7bf1edde43a981dc690d3fee6175e8 Mon Sep 17 00:00:00 2001 From: Jakob Unterwurzacher Date: Sun, 20 Jan 2019 14:32:59 +0100 Subject: tests: check that we can delete directories with all permission Regression test for https://github.com/rfjakob/gocryptfs/issues/354 --- tests/matrix/dir_test.go | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'tests/matrix') diff --git a/tests/matrix/dir_test.go b/tests/matrix/dir_test.go index e7a0b22..2f9f1b0 100644 --- a/tests/matrix/dir_test.go +++ b/tests/matrix/dir_test.go @@ -1,6 +1,7 @@ package matrix import ( + "fmt" "os" "syscall" "testing" @@ -30,3 +31,20 @@ func TestDirOverwrite(t *testing.T) { t.Fatal(err) } } + +// Test that we can create and remove a directory regardless of the permission it has +// https://github.com/rfjakob/gocryptfs/issues/354 +func TestRmdirPerms(t *testing.T) { + for _, perm := range []uint32{0000, 0100, 0200, 0300, 0400, 0500, 0600, 0700} { + dir := fmt.Sprintf("TestRmdir%#o", perm) + path := test_helpers.DefaultPlainDir + "/" + dir + err := syscall.Mkdir(path, perm) + if err != nil { + t.Fatalf("Mkdir %q: %v", dir, err) + } + err = syscall.Rmdir(path) + if err != nil { + t.Fatalf("Rmdir %q: %v", dir, err) + } + } +} -- cgit v1.2.3