tests: clean up leftover mounts in resetTmpDir
Failure in the example filesystems tests can leave them mounted.
This commit is contained in:
parent
db72fcea41
commit
bd1f17ca9f
@ -23,10 +23,17 @@ const gocryptfsBinary = "../gocryptfs"
|
|||||||
|
|
||||||
// resetTmpDir - delete old tmp dir, create new one, write gocryptfs.diriv
|
// resetTmpDir - delete old tmp dir, create new one, write gocryptfs.diriv
|
||||||
func resetTmpDir(plaintextNames bool) {
|
func resetTmpDir(plaintextNames bool) {
|
||||||
fu := exec.Command("fusermount", "-z", "-u", defaultPlainDir)
|
|
||||||
fu.Run()
|
|
||||||
|
|
||||||
err := os.RemoveAll(tmpDir)
|
// Try to unmount everything
|
||||||
|
entries, err := ioutil.ReadDir(tmpDir)
|
||||||
|
if err == nil {
|
||||||
|
for _, e := range entries {
|
||||||
|
fu := exec.Command("fusermount", "-z", "-u", filepath.Join(tmpDir, e.Name()))
|
||||||
|
fu.Run()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
err = os.RemoveAll(tmpDir)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("resetTmpDir: RemoveAll:" + err.Error())
|
fmt.Println("resetTmpDir: RemoveAll:" + err.Error())
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
@ -162,6 +169,8 @@ func testMkdirRmdir(t *testing.T, plainDir string) {
|
|||||||
}
|
}
|
||||||
err = syscall.Rmdir(dir)
|
err = syscall.Rmdir(dir)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
// Make sure the directory can cleaned up by the next test run
|
||||||
|
os.Chmod(dir, 0700)
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user