fs: Add TestChdir()

This commit is contained in:
Alexander Neumann 2017-12-16 00:01:28 +01:00
parent e4fdc5eb76
commit a472868e06
3 changed files with 29 additions and 45 deletions

View file

@ -1,6 +1,9 @@
package fs
import "os"
import (
"os"
"testing"
)
// IsRegularFile returns true if fi belongs to a normal file. If fi is nil,
// false is returned.
@ -11,3 +14,25 @@ func IsRegularFile(fi os.FileInfo) bool {
return fi.Mode()&(os.ModeType|os.ModeCharDevice) == 0
}
// TestChdir changes the current directory to dest, the function back returns to the previous directory.
func TestChdir(t testing.TB, dest string) (back func()) {
prev, err := os.Getwd()
if err != nil {
t.Fatal(err)
}
t.Logf("chdir to %v", dest)
err = os.Chdir(dest)
if err != nil {
t.Fatal(err)
}
return func() {
t.Logf("chdir back to %v", prev)
err = os.Chdir(prev)
if err != nil {
t.Fatal(err)
}
}
}