1
0
mirror of https://github.com/auchenberg/volkswagen synced 2025-04-19 13:17:58 +02:00
volkswagen/index.js
Thomas Watson Steen bc348c489b Defeat assert
2015-10-07 22:45:21 +02:00

62 lines
1.2 KiB
JavaScript

'use strict'
var mockery = require('mockery')
var noop = function () {}
if (process.env.CI || process.env.CONTINUOUS_INTEGRATION) defeat()
function defeat () {
assert()
try {
tape(require('tape/lib/test'))
} catch (e) {}
}
function assert () {
var ok = function () {}
ok.ok = noop
ok.fail = noop
ok.equal = noop
ok.notEqual = noop
ok.deepEqual = noop
ok.notDeepEqual = noop
ok.strictEqual = noop
ok.notStrictEqual = noop
ok.deepStrictEqual = noop
ok.notDeepStrictEqual = noop
ok.ifError = noop
ok.throws = function (block, error) {
try {
block()
} catch (e) {
if (typeof error === 'function') error()
}
}
ok.doesNotThrow = function (block) {
try {
block()
} catch (e) {}
}
mockery.enable({
warnOnReplace: false,
warnOnUnregistered: false
})
mockery.registerMock('assert', ok)
}
function tape (Test) {
var wrapEmitter = require('emitter-listener')
wrapEmitter(
Test.prototype,
function () {},
function (listener) {
return function (result) {
if (result && 'ok' in result && !result.ok) result.ok = true
listener.apply(Test.prototype, arguments)
}
}
)
}