tests: root_test: use TMPDIR=/var/tmp

Otherwise we fail like this on my Fedora 38 box:

	=== RUN   TestOverlay
	DetectQuirks: tmpfs detected, no extended attributes except acls will work.
	    root_test.go:379: No user xattrs! overlay mount will likely fail.
	15:15:57.957960 Unimplemented opcode OPCODE-51
	    root_test.go:398: mount: /tmp/gocryptfs-test-parent-0/3652394902/TestOverlay.2374697046.mnt/merged: wrong fs type, bad option, bad superblock on overlay, missing codepage or helper program, or other error.
	               dmesg(1) may have more information after failed mount system call.

	    root_test.go:399: exit status 32
	--- FAIL: TestOverlay (0.04s)
	FAIL

Also fix the messed-up DetectQuirks bit test.
This commit is contained in:
Jakob Unterwurzacher 2023-05-17 15:20:20 +02:00
parent 1a866b7373
commit 76d0f3ca7c
2 changed files with 3 additions and 2 deletions

View File

@ -10,7 +10,8 @@ test:
.phony: root_test .phony: root_test
root_test: root_test:
./build.bash ./build.bash
cd tests/root_test && go test -c && sudo ./root_test.test -test.v # Need to use TMPDIR=/var/tmp as TestOverlay fails on tmpfs.
cd tests/root_test && go test -c && sudo TMPDIR=/var/tmp ./root_test.test -test.v
.phony: format .phony: format
format: format:

View File

@ -375,7 +375,7 @@ func TestOverlay(t *testing.T) {
t.Skip("must run as root") t.Skip("must run as root")
} }
cDir := test_helpers.InitFS(t) cDir := test_helpers.InitFS(t)
if syscallcompat.DetectQuirks(cDir)|syscallcompat.QuirkNoUserXattr != 0 { if syscallcompat.DetectQuirks(cDir)&syscallcompat.QuirkNoUserXattr != 0 {
t.Logf("No user xattrs! overlay mount will likely fail.") t.Logf("No user xattrs! overlay mount will likely fail.")
} }
os.Chmod(cDir, 0755) os.Chmod(cDir, 0755)