Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
JavaScript
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
.gitignore
.jshintrc
.travis.yml
LICENSE
README.md
bin.js
bustermove.js
package.json
test.js

README.md

BusterMove Build Status

NPM

Hammer Time

A simple drop-in replacement for Buster in Node.js.

Uses node-tap as the test runner when in Node and tape when used packaged in Browserify (yes, that's right! You can run TAP tests, written in Buster-style, in the browser! That's surely worth an M.C. Hammer dance?).

Supports basic Buster functionality, including Sinon and referee integration and structured test suites:

var buster = require('bustermove')
  , assert = buster.assert // 'referee' is the new name for buster-assert
  , refute = buster.refute

buster.testCase('My funky tests', {
    'setUp': function (done) {
      // .. some setup stuff, run before each test, including nested tests
      done()
    }

  , 'tearDown': function (done) {
      // .. some teardown stuff, run after each test, including nested tests
      done()
    }

  , 'test something': function (done) {
      // .. whatever you're testing

      // each of these will be automatically cleaned up after the test is run
      var spy  = this.spy()
        , stub = this.stub()
        , mock = this.mock()

      done()
    }

  , 'nested': {
        'setUp': function (done) {
          // .. run after the parent setUp but before each of the nested tests
          done()          
        }

        // tearDown if you like

      , 'test nested': function (done) {
          // .. something else to test
          done()
        }
    }
})

You then run the test with either node ./tests.js or if you like, tap *-tests.js as it creates node-tap compatible tests.

Currently only this.spy(), this.stub() and this.mock() are supported in the sandbox but it's possible to make it more complete. Send me a pull request if you need it.

Licence

BusterMove is Copyright (c) 2012 Rod Vagg @rvagg and licensed under the MIT licence. All rights not explicitly granted in the MIT license are reserved. See the included LICENSE file for more details.

Something went wrong with that request. Please try again.