web3.js/test/method.validateArgs.js

51 lines
1.5 KiB
JavaScript
Raw Normal View History

2015-03-22 18:12:52 +01:00
var chai = require('chai');
var assert = chai.assert;
var Method = require('../packages/web3-core-method');
var errors = require('../packages/web3-core-helpers/src/errors');
2015-03-22 18:12:52 +01:00
2015-03-25 22:17:35 +01:00
describe('lib/web3/method', function () {
2015-03-22 18:12:52 +01:00
describe('validateArgs', function () {
it('should pass', function () {
2015-03-22 18:12:52 +01:00
// given
var method = new Method({
name: 'something', call: 'eth_something',
2015-03-22 18:12:52 +01:00
params: 1
});
var args = [1];
var args2 = ['heloas'];
// when
var test = function () { method.validateArgs(args); };
var test2 = function () { method.validateArgs(args2); };
// then
assert.doesNotThrow(test);
assert.doesNotThrow(test2);
});
it('should return call based on args', function () {
2015-03-22 18:12:52 +01:00
// given
var method = new Method({
name: 'something',
call: 'eth_something',
2015-03-22 18:12:52 +01:00
params: 2
});
var args = [1];
var args2 = ['heloas', '12', 3];
// when
var test = function () { method.validateArgs(args); };
var test2 = function () { method.validateArgs(args2); };
2015-03-22 18:12:52 +01:00
// then
assert.throws(test, errors.InvalidNumberOfParams(1, 2, 'something').message);
assert.throws(test2, errors.InvalidNumberOfParams(3, 2, 'something').message);
2015-03-22 18:12:52 +01:00
});
});
});