2015-03-22 18:12:52 +01:00
|
|
|
var chai = require('chai');
|
|
|
|
var assert = chai.assert;
|
2017-01-26 10:24:14 +01:00
|
|
|
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 () {
|
2017-01-26 10:24:14 +01:00
|
|
|
|
2015-03-22 18:12:52 +01:00
|
|
|
// given
|
|
|
|
var method = new Method({
|
2017-01-26 10:24:14 +01:00
|
|
|
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 () {
|
2017-01-26 10:24:14 +01:00
|
|
|
|
2015-03-22 18:12:52 +01:00
|
|
|
// given
|
|
|
|
var method = new Method({
|
2017-01-26 10:24:14 +01:00
|
|
|
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); };
|
2017-01-26 10:24:14 +01:00
|
|
|
|
2015-03-22 18:12:52 +01:00
|
|
|
// then
|
2017-01-26 10:24:14 +01:00
|
|
|
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
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|