vinyl-fs-mock

A fake file system implementation, used for test code written based on vinyl and vinyl-fs. Including gulp plugins

Usage no npm install needed!

<script type="module">
  import vinylFsMock from 'https://cdn.skypack.dev/vinyl-fs-mock';
</script>

README

vinyl-fs-mock NPM version Build Status Dependency Status

A fake file system implementation, used for test code written based on vinyl and vinyl-fs. Useful for gulp plugin unit test. With vinyl-fs-mock, all the file fixtures can be provided inline. So not more external fixtures needed.

Install

Install using npm.

$ npm install vinyl-fs-mock

Usage


require('./spec_helper')

describe 'smoke test', ->
  createFS = require('../index')
  coffee = require('gulp-coffee')
  
  it 'should mock gulp', (done) ->  
    fs = createFS
          src:
            coffee:
              'sample.coffee': """
                console.log 'Hello world'
              """
              'another.coffee': """
                fib = (n) ->
                  switch n
                    when 0, 1
                      1
                    else
                      fib(n) + fib(n-1)  
              """
        
    fs.src 'src/coffee/*.coffee'
      .pipe coffee
        bare: true
      .pipe fs.dest 'dest/js'
      .onFinished done, (folder) ->
        # console.log fs.directory  # Display whole tree of files
        folder.should.equal fs.openFolder('dest/js')                
        folder['sample.js'].should.not.be.null
        folder['another.js'].should.not.be.null
      

vinyl-fs-mock is being used in the unit tests for gulp-tree-concat.

Check concat_javascripts.spec.coffee for more detail

API

TODO

License

MIT

NPM downloads