GitHub - perguth/flip-tape: 🔬 Write eloquent tests: 'Tautology'.equals(true, true) (original) (raw)

flip-tape

Write eloquent tests: 'Tautology'.equals(true, true)

More specific: flip-tape adds 'Two is less than three'.ok(2 < 3) syntax to tape plus two further callback-executing methods. Original functionality is kept.

flipped tape machine

Usage

var test = require('flip-tape')

test('Regular tape assertion group', t => { t.plan(4) t.ok(2 < 3, 'Regular tape syntax works as expected.')

// This is new: 'Two is less than three'.ok(2 < 3) 'Five equals five'.equals(5, 5)

'This string becomes a tape comment'.t(t => { t.notOk(2 > 3, 'And both syntax types...') '... still work'.notOk(2 > 3) }) })

'You can also start a group of assertions this way...'.test(t => { t.plan(1) '... and everything works as expected!'.pass() })

All of tapes methods that print out msg to the command-line are usable with the flipped syntax.

API

var test = require('flip-tape')

Attaches all tape-methods that print out to the command-line plus the .t() and .test() methods to the String prototype.

'[message]'.test([opt], cb), '[message]'.only([opt], cb)

Calls the respective tape method: .test or .only.

'[message]'.t(cb)

A tape comment containing the message is added. Then cb(t) gets called with the test object t.

'[message]'.tapeTestMethodName([actual, fn], [expected])

Calls the according tape method relaying the message string and the optional parameters.

License

MIT