Package detail

chai-files

Turbo87202.8kMIT1.4.0

file system assertions for chai

assertions, testing, chai, chai-plugin

readme

chai-files

Build Status Build status npm

file system assertions for chai

Installation

npm install --save-dev chai-files

Usage

After importing chai add the following code to use chai-files assertions:

var chai = require('chai');
var chaiFiles = require('chai-files');

chai.use(chaiFiles);

var expect = chai.expect;
var file = chaiFiles.file;
var dir = chaiFiles.dir;

.to.exist

Check if a file or directory exist:

expect(file('index.js')).to.exist;
expect(file('index.coffee')).to.not.exist;

expect(dir('foo')).to.exist;
expect(dir('missing')).to.not.exist;

.to.equal(...)

Check if the file content equals a string:

expect(file('foo.txt')).to.equal('foo');
expect(file('foo.txt')).to.not.equal('bar');

expect('foo').to.equal(file('foo.txt'));
expect('foo').to.not.equal(file('foo.txt'));

.to.equal(file(...))

Check if the file equals another file:

expect(file('foo.txt')).to.equal(file('foo-copy.txt'));
expect(file('foo.txt')).to.not.equal(file('bar.txt'));

.to.be.empty

Check if a file or directory is empty:

expect(file('empty.txt')).to.be.empty;
expect(file('foo.txt')).to.not.be.empty;

expect(dir('empty')).to.be.empty;
expect(dir('foo')).to.not.be.empty;

.to.contain(...)

Check if a file contains a string:

expect(file('foo.txt')).to.contain('foo');
expect(file('foo.txt')).to.not.contain('bar');

.to.match(/.../)

Check if a file matches a regular expression:

expect(file('foo.txt')).to.match(/fo+/);
expect(file('foo.txt')).to.not.match(/bar?/);

License

chai-files is licensed under the MIT License.

changelog

chai-files changelog

v1.4.0

  • extended exception messages for expect(...).to.exist

v1.3.0

  • expect(...).to.equal(file(...))

v1.2.0

  • expect(file(...)).to.be.empty
  • expect(dir(...)).to.exist
  • expect(dir(...)).to.be.empty

v1.1.0

  • expect(file(...)).to.equal(...)
  • expect(file(...)).to.equal(file(...))
  • expect(file(...)).to.match(...)

v1.0.0

Initial release, including:

  • expect(file(...)).to.exist
  • expect(file(...)).to.contain(...)