yeoman-assert
DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/yeoman-assert package

3.1.1 • Public • Published

yeoman-assert Build Status

yeoman-assert is extending the native Node.js assert module. Every methods in assert also is available with yeoman-assert, plus some code scaffolding related assertion helpers.

Install

$ npm install yeoman-assert

Usage

const assert = require('yeoman-assert');
 
assert(true);
assert.equal(1, 1);

API

assert.file()

  • path (String|Array) Path to a file.

Assert that a file exists.

assert.file('templates/user.hbs');

Assert that each files in the array exists.

assert.file(['templates/user.hbs', 'templates/user/edit.hbs']);
 

assert.noFile()

  • path (String|Array) Path to a file.

Assert that a file doesn't exists.

assert.noFile('templates/user.hbs');

Assert that each of an array of files doesn't exist.

assert.noFile(['templates/user.hbs', 'templates/user/edit.hbs']);
 

assert.fileContent()

  • file (String|Array) Path to a file.
  • reg (Regex|String) Regex or string that will be used to search the file.

Assert that a file's content matches a string.

assert.fileContent('models/user.js', 'App.User = DS.Model.extend');
 

Assert that a file's content matches a regex.

assert.fileContent('models/user.js', /App\.User = DS\.Model\.extend/);

Assert that each of an array of files content matches a regex or string.

assert.fileContent([
   ['models/user.js', 'App.User = DS.Model.extend'],
   ['controllers/user.js', /App\.UserController = Ember\.ObjectController\.extend/]
]);

assert.noFileContent()

  • file (String|Array) Path to a file.
  • reg (Regex|String) Regex or string that will be used to search the file.

Assert that a file's content does not match a string.

assert.noFileContent('models/user.js', 'App.User = DS.Model.extend');
 

Assert that a file's content does not match a regex.

assert.noFileContent('models/user.js', /App\.User = DS\.Model\.extend/);

Assert that each of an array of files content does not match a regex or string.

assert.noFileContent([
   ['models/user.js', 'App.User = DS.Model.extend'],
   ['controllers/user.js', /App\.UserController = Ember\.ObjectController\.extend/]
]);

assert.textEqual()

  • value (String) A string.
  • expected (String) The expected value of the string.

Assert that two strings are equal after standardization of newlines.

assert.textEqual('I have a yellow cat', 'I have a yellow cat');

assert.implement()

  • subject (Object) Subject implementing the façade.
  • methods (Object|Array) A façace, hash or array of keys to be implemented.

Assert an Object implements an interface.

assert.implement(fs, ['readFile']);

assert.notImplement()

  • subject (Object) Subject not implementing the methods.
  • methods (Object|Array) Hash or array of method names to be implemented.

Assert an Object doesn't implements any method of an interface.

assert.notImplement(fs, ['foo']);

assert.objectContent()

Assert an object contains at least a set of keys

var anObject = {a: 1};
 
assert.objectContent(anObject, {a: 2});

assert.noObjectContent()

Assert an object does not contain at least a set of keys

var anObject = {a: 1};
 
assert.noObjectContent(anObject, {a: 1});

assert.jsonFileContent()

Assert a JSON file contains at least a set of keys (rely of assert.objectContent())

assert.jsonFileContent('path/to/file.json', {a: 2});

assert.noJsonFileContent()

Assert a JSON file does not contain at least a set of keys (rely of assert.noObjectContent())

assert.noJsonFileContent('path/to/file.json', {a: 1});

Contribute

See the contributing docs.

License

BSD-2-Clause © Google

Dependents (152)

Package Sidebar

Install

npm i yeoman-assert

Homepage

yeoman.io

Weekly Downloads

56,667

Version

3.1.1

License

BSD-2-Clause

Unpacked Size

14.3 kB

Total Files

4

Last publish

Collaborators

  • ruyadorno
  • mshima
  • ulisesgascon
  • sindresorhus
  • sboudrias
  • eddiemonge
  • addyosmani
  • mischah
  • zckrs
  • stefanbuck