Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var utils = {
- buildRequest: buildRequest,
- makeRequest: makeRequest
- };
- module.exports = {
- getData: getData,
- buildRequest: buildRequest,
- makeRequest: makeRequest,
- utils: utils
- };
- function buildRequest(resource) {
- return 'request';
- }
- function getData(resource, callback) {
- var request = utils.buildRequest(resource);
- utils.makeRequest(request, callback);
- }
- function makeRequest(request, onCompleteFn) {
- // do some IO get some data or receive an error
- var someFakeData = {};
- onCompleteFn(someFakeData);
- }
- ------
- var assert = require('chai').assert;
- var resources = require('./resources.js');
- var sinon = require('sinon');
- describe('resources.js', function() {
- describe('getData()', function() {
- it('calls makeRequest with a built request', function() {
- resources.utils.makeRequest = sinon.spy();
- var resource = 'a resource';
- var request = resources.buildRequest(resource);
- var callback = sinon.spy();
- resources.getData(resource, callback);
- assert.isTrue(
- resources.utils.makeRequest.withArgs(
- request, callback).calledOnce
- );
- });
- });
- });
- -----
- $ mocha *.spec.js
- resources.js
- getData()
- ✓ calls makeRequest with a built request
- 1 passing (13ms)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement