2015-03-22 19:48:25 +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');
|
2015-03-22 19:48:25 +01:00
|
|
|
|
2015-03-25 22:17:35 +01:00
|
|
|
describe('lib/web3/method', function () {
|
2015-03-22 19:48:25 +01:00
|
|
|
describe('formatInput', function () {
|
|
|
|
it('should format plain input', function () {
|
2017-01-26 10:24:14 +01:00
|
|
|
|
2015-03-22 19:48:25 +01:00
|
|
|
// given
|
2015-03-23 13:42:36 +01:00
|
|
|
var star = function (arg) {
|
|
|
|
return arg + '*';
|
2015-03-22 19:48:25 +01:00
|
|
|
};
|
2017-01-26 10:24:14 +01:00
|
|
|
|
2015-03-22 19:48:25 +01:00
|
|
|
var method = new Method({
|
2017-01-26 10:24:14 +01:00
|
|
|
name: 'something', call: 'eth_something',
|
2015-03-23 13:42:36 +01:00
|
|
|
inputFormatter: [star, star, star]
|
2015-03-22 19:48:25 +01:00
|
|
|
});
|
|
|
|
var args = ['1','2','3'];
|
|
|
|
var expectedArgs = ['1*', '2*', '3*'];
|
|
|
|
|
|
|
|
// when
|
|
|
|
var result = method.formatInput(args);
|
|
|
|
|
|
|
|
// then
|
|
|
|
assert.deepEqual(result, expectedArgs);
|
|
|
|
});
|
|
|
|
|
|
|
|
it('should do nothing if there is no formatter', function () {
|
|
|
|
|
|
|
|
// given
|
2017-01-26 10:24:14 +01:00
|
|
|
var method = new Method({name: 'something', call: 'eth_something'});
|
2015-03-22 19:48:25 +01:00
|
|
|
var args = [1,2,3];
|
|
|
|
|
|
|
|
// when
|
|
|
|
var result = method.formatInput(args);
|
2017-01-26 10:24:14 +01:00
|
|
|
|
2015-03-22 19:48:25 +01:00
|
|
|
// then
|
|
|
|
assert.deepEqual(result, args);
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|