From 4aae77602a7540b4f977572f3fbdc0891ac57cab Mon Sep 17 00:00:00 2001 From: Kir Kolyshkin Date: Thu, 25 Jan 2018 20:30:24 -0800 Subject: [PATCH] pkg/mount unit tests: skip some test under non-root This makes `go test .` to pass if run as non-root user, skipping those tests that require superuser privileges (for `mount`). Signed-off-by: Kir Kolyshkin --- pkg/mount/mount_unix_test.go | 8 ++++++++ pkg/mount/mounter_linux_test.go | 2 +- pkg/mount/sharedsubtree_linux_test.go | 16 ++++++++++++++++ 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/pkg/mount/mount_unix_test.go b/pkg/mount/mount_unix_test.go index f3333d5b31..84699eee5e 100644 --- a/pkg/mount/mount_unix_test.go +++ b/pkg/mount/mount_unix_test.go @@ -25,6 +25,10 @@ func TestMountOptionsParsing(t *testing.T) { } func TestMounted(t *testing.T) { + if os.Getuid() != 0 { + t.Skip("root required") + } + tmp := path.Join(os.TempDir(), "mount-tests") if err := os.MkdirAll(tmp, 0777); err != nil { t.Fatal(err) @@ -76,6 +80,10 @@ func TestMounted(t *testing.T) { } func TestMountReadonly(t *testing.T) { + if os.Getuid() != 0 { + t.Skip("root required") + } + tmp := path.Join(os.TempDir(), "mount-tests") if err := os.MkdirAll(tmp, 0777); err != nil { t.Fatal(err) diff --git a/pkg/mount/mounter_linux_test.go b/pkg/mount/mounter_linux_test.go index ac858e269b..e5da438efe 100644 --- a/pkg/mount/mounter_linux_test.go +++ b/pkg/mount/mounter_linux_test.go @@ -14,7 +14,7 @@ import ( func TestMount(t *testing.T) { if os.Getuid() != 0 { - t.Skip("not root tests would fail") + t.Skip("root required") } source, err := ioutil.TempDir("", "mount-test-source-") diff --git a/pkg/mount/sharedsubtree_linux_test.go b/pkg/mount/sharedsubtree_linux_test.go index 0cb2b959cd..019514491f 100644 --- a/pkg/mount/sharedsubtree_linux_test.go +++ b/pkg/mount/sharedsubtree_linux_test.go @@ -12,6 +12,10 @@ import ( // nothing is propagated in or out func TestSubtreePrivate(t *testing.T) { + if os.Getuid() != 0 { + t.Skip("root required") + } + tmp := path.Join(os.TempDir(), "mount-tests") if err := os.MkdirAll(tmp, 0777); err != nil { t.Fatal(err) @@ -110,6 +114,10 @@ func TestSubtreePrivate(t *testing.T) { // Testing that when a target is a shared mount, // then child mounts propagate to the source func TestSubtreeShared(t *testing.T) { + if os.Getuid() != 0 { + t.Skip("root required") + } + tmp := path.Join(os.TempDir(), "mount-tests") if err := os.MkdirAll(tmp, 0777); err != nil { t.Fatal(err) @@ -178,6 +186,10 @@ func TestSubtreeShared(t *testing.T) { // testing that mounts to a shared source show up in the slave target, // and that mounts into a slave target do _not_ show up in the shared source func TestSubtreeSharedSlave(t *testing.T) { + if os.Getuid() != 0 { + t.Skip("root required") + } + tmp := path.Join(os.TempDir(), "mount-tests") if err := os.MkdirAll(tmp, 0777); err != nil { t.Fatal(err) @@ -282,6 +294,10 @@ func TestSubtreeSharedSlave(t *testing.T) { } func TestSubtreeUnbindable(t *testing.T) { + if os.Getuid() != 0 { + t.Skip("root required") + } + tmp := path.Join(os.TempDir(), "mount-tests") if err := os.MkdirAll(tmp, 0777); err != nil { t.Fatal(err)