bitcore-wallet-service/test/utils.js

52 lines
1.1 KiB
JavaScript

'use strict';
var _ = require('lodash');
var chai = require('chai');
var sinon = require('sinon');
var should = chai.should();
var Utils = require('../lib/utils');
describe('Utils', function() {
describe('#checkRequired', function() {
it('should check required fields', function() {
var obj = {
id: 'id',
name: 'name',
array: ['a', 'b'],
};
var fixtures = [{
args: 'id',
check: true
}, {
args: ['id'],
check: true
}, {
args: ['id, name'],
check: false
}, {
args: ['id', 'name'],
check: true
}, {
args: 'array',
check: true
}, {
args: 'dummy',
check: false
}, {
args: ['dummy1', 'dummy2'],
check: false
}, {
args: ['id', 'dummy'],
check: false
}, ];
_.each(fixtures, function(f) {
Utils.checkRequired(obj, f.args).should.equal(f.check);
});
});
it('should fail to check required fields on non-object', function() {
var obj = 'dummy';
Utils.checkRequired(obj, 'name').should.be.false;
});
});
});