chai-checkmark
A Chai plugin for counting assertions.
Last updated 6 years ago by sirlancelot .
ISC · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install chai-checkmark 
SYNC missed versions from official npm registry.

Chai Checkmark

Checkmark is a Chai plugin for counting assertions made during a test. Often, when dealing with asynchronous tests, it can be difficult to determine if a callback was actually called. With Checkmark, you can be assured that the assertion was made.

Installation

Include Checkmark in the browser, as a CommonJS module, or through AMD.

<!-- Browser -->
<script src="chai.js"></script>
<script src="chai-checkmark.js"></script>
// CommonJS
var chai = require("chai"),
    plugin = require("chai-checkmark")
chai.use(plugin)
// AMD
require(["chai", "chai-checkmark"], function(chai, plugin) {
    chai.use(plugin)
})

How to use

describe("something", function() {
  it("should check two things", function(next) {
    expect(2).checks(next) // <-- pass in the callback

    "sync test".should.be.a("string").mark() // <-- check 1

    setTimeout(function() {
      // check 2, callback is called after the current event finishes
      "async test".should.be.a("string").mark()
    }, 500)
  })
})

API

Checkmark builds on Chai's assertion library by adding just two methods:

expect(Number).check(Function) or .checks(Function)

This must be called before .mark() but doesn't have to be at the very beginning of a test. You establish how many times you expect .mark() to be called and optionally pass in a callback to be called when the number of marks is reached.

expect(str).to.be.a("string").mark()

Add .mark() to the end of every assertion to which you want to have tracked by Checkmark. You can use any number of Chai's assertions, including .and, as long as you end your statement with .mark().

Contributing

Pull Requests are welcome. They will only be merged if they are based off the tip of the develop branch. Please rebase (don't merge!) your changes if you are behind. To learn about why rebase is better than merge, check out The Case for Git Rebase.

In short, to bring your Working Copy up to the tip of develop, you can use the rebase feature: git pull --rebase. See Pull with Rebase for details.

Current Tags

  • 1.0.1                                ...           latest (6 years ago)

2 Versions

  • 1.0.1                                ...           6 years ago
  • 1.0.0                                ...           6 years ago
Maintainers (1)
Downloads
Today 0
This Week 40
This Month 40
Last Day 0
Last Week 16
Last Month 222
Dependencies (0)
None
Dev Dependencies (3)

Copyright 2014 - 2016 © taobao.org |