fstest
2 分钟阅读
fstest
https://pkg.go.dev/testing/fstest@go1.20.1
fstest包实现了用于测试文件系统实现和用户的支持。
常量
This section is empty.
变量
This section is empty.
函数
func TestFS
|
|
TestFS函数测试文件系统实现。它遍历fsys中的所有文件树,打开并检查每个文件是否正确。它还检查文件系统至少包含所需的文件。特殊情况是,如果没有列出所需的文件,则fsys必须为空。否则,fsys必须至少包含所列出的文件;它也可以包含其他文件。fsys的内容不能与TestFS函数并发更改。
如果TestFS函数发现任何不良行为,它将返回一个报告所有不良行为的错误。错误文本跨多行,每行报告一个检测到的不良行为。
在测试内部的典型用法是:
if err := fstest.TestFS(myFS, "file/that/should/be/present"); err != nil {
t.Fatal(err)
}
类型
type MapFS
|
|
MapFS是一个简单的内存文件系统,用于测试,表示为从路径名(Open的参数)到有关它们所表示的文件或目录的信息的映射。
该映射不必包括包含在映射中的文件的父目录;如果需要,这些父目录将被合成。但是,可以通过设置MapFile.Mode的ModeDir位来包括目录;这可能是对目录的FileInfo进行详细控制或创建空目录所必需的。
文件系统操作直接从映射中读取,因此可以通过编辑映射来更改文件系统。一个含义是文件系统操作不能与对映射的更改同时运行,这将导致竞争。另一个含义是打开或读取目录需要迭代整个映射,因此MapFS通常应仅用于少于几百个条目或目录读取的情况。
(MapFS) Glob
|
|
(MapFS) Open
|
|
Open opens the named file.
(MapFS) ReadDir
|
|
(MapFS) ReadFile
|
|
(MapFS) Stat
|
|
(MapFS) Sub
|
|
type MapFile
|
|
MapFile描述MapFS中的单个文件。
最后修改 June 4, 2023: 将标准库、第三方包、官方博客从docs中脱离出来成为一个单独的menu (1282bf6)