package fstest
import "github.com/tetratelabs/wazero/internal/fstest"
Package fstest defines filesystem test cases that help validate host functions implementing WASI and `GOOS=js GOARCH=wasm`. Tests are defined here to reduce duplication and drift.
Here's an example using this inside code that compiles to wasm.
if err := fstest.WriteTestFiles(tmpDir); err != nil { log.Panicln(err) } if err := fstest.TestFS(os.DirFS(tmpDir)); err != nil { log.Panicln(err) }
Failures found here should result in new tests in the appropriate package, for example, sysfs or wasi_snapshot_preview1.
This package must have no dependencies. Otherwise, compiling this with TinyGo or `GOOS=js GOARCH=wasm` can become bloated or complicated.
Index ¶
Variables ¶
var FS = func() fstest.MapFS { testFS := make(fstest.MapFS, len(files)) for _, nf := range files { testFS[nf.name] = nf.file } return testFS }()
FS includes all test files.
Functions ¶
func TestFS ¶
TestFS runs fstest.TestFS on the given input which is either FS or includes files written by WriteTestFiles.
func WriteTestFiles ¶
WriteTestFiles writes files defined in FS to the given directory. This is used for implementations like os.DirFS.
Source Files ¶
- Version
- v1.7.1
- Published
- Apr 15, 2024
- Platform
- linux/amd64
- Imports
- 7 packages
- Last checked
- 6 minutes ago –
Tools for package owners.