Sha256: 391d1b55e2dac8b19a22c25d063601e8d5973707563b697547b1b9722133e338

Contents?: true

Size: 928 Bytes

Versions: 80

Compression:

Stored size: 928 Bytes

Contents

var assert = require('assert');

var mustCallChecks = [];

function runCallChecks() {
  var failed_count = 0;
  for (var i=0 ; i< mustCallChecks.length; ++i) {
    var context = mustCallChecks[i];
    if (context.actual === context.expected) {
      continue;
    }

    failed_count++;
    console.log('Mismatched %s function calls. Expected %d, actual %d.',
                context.name,
                context.expected,
                context.actual);
    console.log(context.stack.split('\n').slice(2).join('\n'));
  }

  assert(failed_count === 0);
}

after(runCallChecks);

exports.mustCall = function(fn, expected) {
  if (typeof expected !== 'number') expected = 1;

  var context = {
    expected: expected,
    actual: 0,
    stack: (new Error).stack,
    name: fn.name || '<anonymous>'
  };

  mustCallChecks.push(context);

  return function() {
    context.actual++;
    return fn.apply(this, arguments);
  };
};

Version data entries

80 entries across 80 versions & 10 rubygems

Version Path
smock-0.1.265 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.264 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.263 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.262 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.261 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.260 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.259 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.258 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.256 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.255 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.254 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.253 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.252 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.251 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.250 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.249 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.247 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.246 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.245 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js
smock-0.1.244 node_modules/webpack/node_modules/node-libs-browser/node_modules/events/tests/common.js