🔌
Drop-in abstractions
IFileSystem, ITimeSystem and IRandomSystem wrap the static APIs from System.IO, System.Diagnostics, System.Threading and System so they can be injected and replaced in tests.
💾
A real in-memory file system
MockFileSystem behaves exactly like the real file system: every test runs against both, so the mock and reality stay in sync. Drives, quotas, FileSystemWatcher and SafeFileHandle are all supported.
🖥️
Cross-platform simulation
Simulate Linux, macOS or Windows file systems on any host - case-sensitivity, path separators, drive letters and Unix file modes are all honoured, so you can test platform-specific behaviour from a single CI job.