patchFs(vol[, fs])
Rewrites Node's filesystem module fs
with fs-like object.
vol
- fs-like objectfs
(optional) - a filesystem to patch, defaults to require('fs')
import {patchFs} from 'fs-monkey'; const myfs = { readFileSync: () => 'hello world', }; patchFs(myfs); console.log(require('fs').readFileSync('/foo/bar')); // hello world
You don't need to create fs-like objects yourself, use memfs
to create a virtual filesystem for you:
import {vol} from 'memfs'; import {patchFs} from 'fs-monkey'; vol.fromJSON({'/dir/foo': 'bar'}); patchFs(vol); console.log(require('fs').readdirSync('/')); // [ 'dir' ]