mirror of
https://github.com/status-im/web3.js.git
synced 2025-02-23 11:38:12 +00:00
added better test
This commit is contained in:
parent
0fdecce986
commit
d4bb4d5978
@ -62,7 +62,7 @@ describe('contract', function () {
|
||||
describe('event', function () {
|
||||
it('should create event filter', function (done) {
|
||||
var provider = new FakeHttpProvider();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
var signature = 'Changed(address,uint256,uint256,uint256)';
|
||||
var step = 0;
|
||||
provider.injectValidation(function (payload) {
|
||||
@ -75,7 +75,7 @@ describe('contract', function () {
|
||||
topics: [
|
||||
'0x' + sha3(signature),
|
||||
'0x0000000000000000000000001234567890123456789012345678901234567891',
|
||||
null
|
||||
'0x000000000000000000000000000000000000000000000000000000000000000a'
|
||||
],
|
||||
address: '0x1234567890123456789012345678901234567891'
|
||||
});
|
||||
@ -90,7 +90,7 @@ describe('contract', function () {
|
||||
],
|
||||
number: 2,
|
||||
data: '0x0000000000000000000000000000000000000000000000000000000000000001' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000008'
|
||||
'0000000000000000000000000000000000000000000000000000000000000008'
|
||||
}]);
|
||||
assert.equal(payload.jsonrpc, '2.0');
|
||||
assert.equal(payload.method, 'eth_getFilterLogs');
|
||||
@ -105,7 +105,7 @@ describe('contract', function () {
|
||||
],
|
||||
number: 2,
|
||||
data: '0x0000000000000000000000000000000000000000000000000000000000000001' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000008'
|
||||
'0000000000000000000000000000000000000000000000000000000000000008'
|
||||
}]]);
|
||||
var r = payload.filter(function (p) {
|
||||
return p.jsonrpc === '2.0' && p.method === 'eth_getFilterChanges' && p.params[0] === '0x3';
|
||||
@ -117,9 +117,9 @@ describe('contract', function () {
|
||||
var contract = web3.eth.contract(desc).at(address);
|
||||
|
||||
var res = 0;
|
||||
var event = contract.Changed({from: address});
|
||||
var event = contract.Changed({from: address, amount: 10});
|
||||
event.watch(function(err, result) {
|
||||
assert.equal(result.args.from, address);
|
||||
assert.equal(result.args.from, address);
|
||||
assert.equal(result.args.amount, 1);
|
||||
assert.equal(result.args.t1, 1);
|
||||
assert.equal(result.args.t2, 8);
|
||||
@ -133,7 +133,7 @@ describe('contract', function () {
|
||||
|
||||
it('should create event filter and watch immediately', function (done) {
|
||||
var provider = new FakeHttpProvider();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
var signature = 'Changed(address,uint256,uint256,uint256)';
|
||||
var step = 0;
|
||||
provider.injectValidation(function (payload) {
|
||||
@ -161,7 +161,7 @@ describe('contract', function () {
|
||||
],
|
||||
number: 2,
|
||||
data: '0x0000000000000000000000000000000000000000000000000000000000000001' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000008'
|
||||
'0000000000000000000000000000000000000000000000000000000000000008'
|
||||
}]);
|
||||
assert.equal(payload.jsonrpc, '2.0');
|
||||
assert.equal(payload.method, 'eth_getFilterLogs');
|
||||
@ -176,7 +176,7 @@ describe('contract', function () {
|
||||
],
|
||||
number: 2,
|
||||
data: '0x0000000000000000000000000000000000000000000000000000000000000001' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000008'
|
||||
'0000000000000000000000000000000000000000000000000000000000000008'
|
||||
}]]);
|
||||
var r = payload.filter(function (p) {
|
||||
return p.jsonrpc === '2.0' && p.method === 'eth_getFilterChanges' && p.params[0] === '0x3';
|
||||
@ -189,7 +189,7 @@ describe('contract', function () {
|
||||
|
||||
var res = 0;
|
||||
var event = contract.Changed({from: address}, function(err, result) {
|
||||
assert.equal(result.args.from, address);
|
||||
assert.equal(result.args.from, address);
|
||||
assert.equal(result.args.amount, 1);
|
||||
assert.equal(result.args.t1, 1);
|
||||
assert.equal(result.args.t2, 8);
|
||||
@ -203,7 +203,7 @@ describe('contract', function () {
|
||||
|
||||
it('should create all event filter', function (done) {
|
||||
var provider = new FakeHttpProvider();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
var signature = 'Changed(address,uint256,uint256,uint256)';
|
||||
var step = 0;
|
||||
provider.injectValidation(function (payload) {
|
||||
@ -227,7 +227,7 @@ describe('contract', function () {
|
||||
],
|
||||
number: 2,
|
||||
data: '0x0000000000000000000000000000000000000000000000000000000000000001' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000008'
|
||||
'0000000000000000000000000000000000000000000000000000000000000008'
|
||||
}]);
|
||||
assert.equal(payload.jsonrpc, '2.0');
|
||||
assert.equal(payload.method, 'eth_getFilterLogs');
|
||||
@ -242,7 +242,7 @@ describe('contract', function () {
|
||||
],
|
||||
number: 2,
|
||||
data: '0x0000000000000000000000000000000000000000000000000000000000000001' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000008'
|
||||
'0000000000000000000000000000000000000000000000000000000000000008'
|
||||
}]]);
|
||||
var r = payload.filter(function (p) {
|
||||
return p.jsonrpc === '2.0' && p.method === 'eth_getFilterChanges' && p.params[0] === '0x3';
|
||||
@ -256,7 +256,7 @@ describe('contract', function () {
|
||||
var res = 0;
|
||||
var event = contract.allEvents();
|
||||
event.watch(function(err, result) {
|
||||
assert.equal(result.args.from, address);
|
||||
assert.equal(result.args.from, address);
|
||||
assert.equal(result.args.amount, 1);
|
||||
assert.equal(result.args.t1, 1);
|
||||
assert.equal(result.args.t2, 8);
|
||||
@ -270,11 +270,11 @@ describe('contract', function () {
|
||||
|
||||
it('should call constant function', function () {
|
||||
var provider = new FakeHttpProvider();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
provider.injectResult('0x0000000000000000000000000000000000000000000000000000000000000032');
|
||||
var signature = 'balance(address)'
|
||||
var address = '0x1234567890123456789012345678901234567891';
|
||||
|
||||
|
||||
provider.injectValidation(function (payload) {
|
||||
assert.equal(payload.method, 'eth_call');
|
||||
assert.deepEqual(payload.params, [{
|
||||
@ -291,11 +291,11 @@ describe('contract', function () {
|
||||
|
||||
it('should call constant function with default block', function () {
|
||||
var provider = new FakeHttpProvider();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
provider.injectResult('0x0000000000000000000000000000000000000000000000000000000000000032');
|
||||
var signature = 'balance(address)'
|
||||
var address = '0x1234567890123456789012345678901234567891';
|
||||
|
||||
|
||||
provider.injectValidation(function (payload) {
|
||||
assert.equal(payload.method, 'eth_call');
|
||||
assert.deepEqual(payload.params, [{
|
||||
@ -312,14 +312,14 @@ describe('contract', function () {
|
||||
|
||||
it('should sendTransaction to contract function', function () {
|
||||
var provider = new FakeHttpProvider();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
var signature = 'send(address,uint256)';
|
||||
var address = '0x1234567890123456789012345678901234567891';
|
||||
provider.injectValidation(function (payload) {
|
||||
assert.equal(payload.method, 'eth_sendTransaction');
|
||||
assert.deepEqual(payload.params, [{
|
||||
data: '0x' + sha3(signature).slice(0, 8) +
|
||||
'0000000000000000000000001234567890123456789012345678901234567891' +
|
||||
data: '0x' + sha3(signature).slice(0, 8) +
|
||||
'0000000000000000000000001234567890123456789012345678901234567891' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000011' ,
|
||||
from: address,
|
||||
to: address
|
||||
@ -333,7 +333,7 @@ describe('contract', function () {
|
||||
|
||||
it('should make a call with optional params', function () {
|
||||
var provider = new FakeHttpProvider();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
provider.injectResult('0x0000000000000000000000000000000000000000000000000000000000000032');
|
||||
var signature = 'balance(address)';
|
||||
var address = '0x1234567890123456789012345678901234567891';
|
||||
@ -356,7 +356,7 @@ describe('contract', function () {
|
||||
|
||||
it('should throw if called with optional params without all args', function () {
|
||||
var provider = new FakeHttpProvider();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
provider.injectResult('0x0000000000000000000000000000000000000000000000000000000000000032');
|
||||
var signature = 'balance(address)';
|
||||
var address = '0x1234567890123456789012345678901234567891';
|
||||
@ -371,7 +371,7 @@ describe('contract', function () {
|
||||
});
|
||||
|
||||
var contract = web3.eth.contract(desc).at(address);
|
||||
|
||||
|
||||
var test = function() {
|
||||
var r = contract.balance({from: address, gas: 50000});
|
||||
}
|
||||
@ -381,7 +381,7 @@ describe('contract', function () {
|
||||
|
||||
it('should explicitly make a call with optional params', function () {
|
||||
var provider = new FakeHttpProvider();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
provider.injectResult('0x0000000000000000000000000000000000000000000000000000000000000032');
|
||||
var signature = 'balance(address)';
|
||||
var address = '0x1234567890123456789012345678901234567891';
|
||||
@ -404,7 +404,7 @@ describe('contract', function () {
|
||||
|
||||
it('should explicitly make a call with optional params and defaultBlock', function () {
|
||||
var provider = new FakeHttpProvider();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
provider.injectResult('0x0000000000000000000000000000000000000000000000000000000000000032');
|
||||
var signature = 'balance(address)';
|
||||
var address = '0x1234567890123456789012345678901234567891';
|
||||
@ -456,14 +456,14 @@ describe('contract', function () {
|
||||
|
||||
it('should sendTransaction with optional params', function () {
|
||||
var provider = new FakeHttpProvider();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
var signature = 'send(address,uint256)';
|
||||
var address = '0x1234567890123456789012345678901234567891';
|
||||
provider.injectValidation(function (payload) {
|
||||
assert.equal(payload.method, 'eth_sendTransaction');
|
||||
assert.deepEqual(payload.params, [{
|
||||
data: '0x' + sha3(signature).slice(0, 8) +
|
||||
'0000000000000000000000001234567890123456789012345678901234567891' +
|
||||
data: '0x' + sha3(signature).slice(0, 8) +
|
||||
'0000000000000000000000001234567890123456789012345678901234567891' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000011' ,
|
||||
to: address,
|
||||
from: address,
|
||||
@ -480,14 +480,14 @@ describe('contract', function () {
|
||||
|
||||
it('should explicitly sendTransaction with optional params', function () {
|
||||
var provider = new FakeHttpProvider();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
var signature = 'send(address,uint256)';
|
||||
var address = '0x1234567890123456789012345678901234567891';
|
||||
provider.injectValidation(function (payload) {
|
||||
assert.equal(payload.method, 'eth_sendTransaction');
|
||||
assert.deepEqual(payload.params, [{
|
||||
data: '0x' + sha3(signature).slice(0, 8) +
|
||||
'0000000000000000000000001234567890123456789012345678901234567891' +
|
||||
data: '0x' + sha3(signature).slice(0, 8) +
|
||||
'0000000000000000000000001234567890123456789012345678901234567891' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000011' ,
|
||||
to: address,
|
||||
from: address,
|
||||
@ -504,14 +504,14 @@ describe('contract', function () {
|
||||
|
||||
it('should explicitly sendTransaction with optional params and call callback without error', function (done) {
|
||||
var provider = new FakeHttpProvider();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
var address = '0x1234567890123456789012345678901234567891';
|
||||
var signature = 'send(address,uint256)';
|
||||
provider.injectValidation(function (payload) {
|
||||
assert.equal(payload.method, 'eth_sendTransaction');
|
||||
assert.deepEqual(payload.params, [{
|
||||
data: '0x' + sha3(signature).slice(0, 8) +
|
||||
'0000000000000000000000001234567890123456789012345678901234567891' +
|
||||
data: '0x' + sha3(signature).slice(0, 8) +
|
||||
'0000000000000000000000001234567890123456789012345678901234567891' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000011' ,
|
||||
to: address,
|
||||
from: address,
|
||||
@ -531,14 +531,14 @@ describe('contract', function () {
|
||||
|
||||
it('should explicitly estimateGas with optional params', function () {
|
||||
var provider = new FakeHttpProvider();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
var signature = 'send(address,uint256)';
|
||||
var address = '0x1234567890123456789012345678901234567891';
|
||||
provider.injectValidation(function (payload) {
|
||||
assert.equal(payload.method, 'eth_estimateGas');
|
||||
assert.deepEqual(payload.params, [{
|
||||
data: '0x' + sha3(signature).slice(0, 8) +
|
||||
'0000000000000000000000001234567890123456789012345678901234567891' +
|
||||
data: '0x' + sha3(signature).slice(0, 8) +
|
||||
'0000000000000000000000001234567890123456789012345678901234567891' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000011' ,
|
||||
to: address,
|
||||
from: address,
|
||||
@ -555,19 +555,19 @@ describe('contract', function () {
|
||||
|
||||
it('should call testArr method and properly parse result', function () {
|
||||
var provider = new FakeHttpProvider2();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
var signature = 'testArr(int[])';
|
||||
var address = '0x1234567890123456789012345678901234567891';
|
||||
provider.injectResultList([{
|
||||
result: '0x0000000000000000000000000000000000000000000000000000000000000005'
|
||||
}]);
|
||||
|
||||
|
||||
provider.injectValidation(function (payload) {
|
||||
assert.equal(payload.method, 'eth_call');
|
||||
assert.deepEqual(payload.params, [{
|
||||
data: '0x' + sha3(signature).slice(0, 8) +
|
||||
'0000000000000000000000000000000000000000000000000000000000000020' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000001' +
|
||||
data: '0x' + sha3(signature).slice(0, 8) +
|
||||
'0000000000000000000000000000000000000000000000000000000000000020' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000001' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000003',
|
||||
to: address
|
||||
},
|
||||
@ -580,10 +580,10 @@ describe('contract', function () {
|
||||
|
||||
assert.deepEqual(new BigNumber(5), result);
|
||||
});
|
||||
|
||||
|
||||
it('should call testArr method, properly parse result and return the result async', function (done) {
|
||||
var provider = new FakeHttpProvider2();
|
||||
var web3 = new Web3(provider);
|
||||
var web3 = new Web3(provider);
|
||||
var signature = 'testArr(int[])';
|
||||
var address = '0x1234567890123456789012345678901234567891';
|
||||
provider.injectResultList([{
|
||||
@ -592,9 +592,9 @@ describe('contract', function () {
|
||||
provider.injectValidation(function (payload) {
|
||||
assert.equal(payload.method, 'eth_call');
|
||||
assert.deepEqual(payload.params, [{
|
||||
data: '0x' + sha3(signature).slice(0, 8) +
|
||||
'0000000000000000000000000000000000000000000000000000000000000020' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000001' +
|
||||
data: '0x' + sha3(signature).slice(0, 8) +
|
||||
'0000000000000000000000000000000000000000000000000000000000000020' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000001' +
|
||||
'0000000000000000000000000000000000000000000000000000000000000003',
|
||||
to: address
|
||||
},
|
||||
|
Loading…
x
Reference in New Issue
Block a user