fstest

package
Version: v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 14, 2021 License: Apache-2.0 Imports: 14 Imported by: 86

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckDirectoryEqual

func CheckDirectoryEqual(d1, d2 string) error

CheckDirectoryEqual compares two directory paths to make sure that the content of the directories is the same.

func CheckDirectoryEqualWithApplier

func CheckDirectoryEqualWithApplier(root string, a Applier) error

CheckDirectoryEqualWithApplier compares directory against applier

func FSSuite

func FSSuite(t *testing.T, a TestApplier)

FSSuite runs the path test suite

Types

type Applier

type Applier interface {
	Apply(root string) error
}

Applier applies single file changes

func Apply

func Apply(appliers ...Applier) Applier

Apply returns a new applier from the given appliers

func Base

func Base() Applier

func Chmod

func Chmod(name string, perm os.FileMode) Applier

Chmod returns a file applier which changes the file permission

func Chown

func Chown(name string, uid, gid int) Applier

Chown returns a file applier which changes the ownership of a file

func Chtimes

func Chtimes(name string, atime, mtime time.Time) Applier

Chtimes changes access and mod time of file. Use Lchtimes for symbolic links.

func CreateDir

func CreateDir(name string, perm os.FileMode) Applier

CreateDir returns a file applier to create the directory with the provided name and permission

func CreateFile

func CreateFile(name string, content []byte, perm os.FileMode) Applier

CreateFile returns a file applier which creates a file as the provided name with the given content and permission.

func CreateRandomFile

func CreateRandomFile(name string, seed, size int64, perm os.FileMode) Applier

CreateRandomFile returns a file applier which creates a file with random content of the given size using the given seed and permission.

func CreateSocket

func CreateSocket(name string, perm os.FileMode) Applier

func Lchtimes

func Lchtimes(name string, atime, mtime time.Time) Applier

Lchtimes changes access and mod time of file without following symlink

func Link(oldname, newname string) Applier

Link returns a file applier which creates a hard link

func Remove

func Remove(name string) Applier

Remove returns a file applier which removes the provided file name

func RemoveAll

func RemoveAll(name string) Applier

RemoveAll returns a file applier which removes the provided file name as in os.RemoveAll

func Rename

func Rename(old, new string) Applier

Rename returns a file applier which renames a file

func SetXAttr

func SetXAttr(name, key, value string) Applier

SetXAttr sets the xatter for the file

func Symlink(oldname, newname string) Applier

Symlink returns a file applier which creates a symbolic link

type TestApplier

type TestApplier interface {
	TestContext(context.Context) (context.Context, func(), error)
	Apply(context.Context, Applier) (string, func(), error)
}

TestApplier applies the test context

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto
y or Y : Canonical URL