web3.js/test/requestmanager.js

45 lines
1.4 KiB
JavaScript

var chai = require('chai');
var assert = chai.assert;
var RequestManager = require('../lib/web3/requestmanager');
var FakeHttpProvider = require('./helpers/FakeHttpProvider');
// TODO: handling errors!
// TODO: validation of params!
describe('lib/web3/requestmanager', function () {
describe('send', function () {
it('should return expected result synchronously', function () {
var provider = new FakeHttpProvider();
var manager = RequestManager.getInstance();
manager.setProvider(provider);
var expected = 'hello_world';
provider.injectResult(expected);
var result = manager.send({
method: 'test',
params: [1,2,3]
});
assert.equal(expected, result);
});
it('should return expected result asynchronously', function (done) {
var provider = new FakeHttpProvider();
var manager = RequestManager.getInstance();
manager.setProvider(provider);
var expected = 'hello_world';
provider.injectResult(expected);
manager.sendAsync({
method: 'test',
params: [1,2,3]
}, function (error, result) {
assert.equal(error, null);
assert.equal(expected, result);
done();
});
});
});
});