This package has been deprecated

Author message:

This module has moved and is now available at @hapi/code. Please update your dependencies as this version is no longer maintained an may contain bugs and security issues.

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

5.2.4 • Public • Published

code

BDD assertion library.

Current Version Build Status

Lead Maintainer - Colin Ihrig

Example

const Code = require('code');
const expect = Code.expect;
 
expect(true).to.be.a.boolean().and.to.not.equal(false);
expect('this string').to.only.include(['this', 'string']);

Acknowledgments

code was created as a direct rewrite of the powerful chai assertions library. This virtual fork was created for a few reasons. First, chai mixed usage of methods and properties creates a problematic environment in which it is too easy to forget a method () and result in an assertion that is never executed (and therefor passes incorrectly). This observation was noted by the must author.

The second reason is that similar to lab, our test runner, we wanted an assertion library that is small, simple, and intuitive - without plugins, extensions, or the overhead of having to support testing in the browser. code provides much of the same functionality in about 300 lines of code that are trivial to read in a few minutes.

And last, we wanted to experiment with some new features that allow deeper integration between the test runner and assertions library. The first of which are two methods exported (and used by lab) for getting the total assertions count (which is a measure of the tests comprehensiveness), and by verifying that every assertion created (e.g. every expect() call) is also executed. This will alert when a statement like expect(5).to.be.a.string is not allowed to remain unnoticed (and fail to throw due to the missing ()).

Like lab, the goal is to keep this module small and simple. If you need extensibility or other functionality, we recommend looking at the many other excellent assertions libraries available.

API

See the API Reference.

Dependents (83)

Package Sidebar

Install

npm i code

Weekly Downloads

4,850

Version

5.2.4

License

BSD-3-Clause

Unpacked Size

19 kB

Total Files

5

Last publish

Collaborators

  • nargonath
  • devinivy
  • marsup
  • nlf