Prettify
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
import * as chai from 'chai';
|
||||
import * as _ from 'lodash';
|
||||
import Web3 = require('web3');
|
||||
import Web3ProviderEngine = require('web3-provider-engine');
|
||||
import FixtureSubprovider = require('web3-provider-engine/subproviders/fixture');
|
||||
|
||||
@@ -8,11 +7,7 @@ import promisify = require('es6-promisify');
|
||||
import EthereumTx = require('ethereumjs-tx');
|
||||
|
||||
import { NonceTrackerSubprovider } from '../../src';
|
||||
import { DoneCallback } from '../../src/types';
|
||||
import { chaiSetup } from '../chai_setup';
|
||||
import { reportCallbackErrors } from '../utils/report_callback_errors';
|
||||
|
||||
import { Subprovider } from '../../src/subproviders/subprovider';
|
||||
|
||||
const expect = chai.expect;
|
||||
chaiSetup.configure();
|
||||
@@ -24,17 +19,19 @@ describe('NonceTrackerSubprovider', () => {
|
||||
let called = false;
|
||||
const nonceTrackerSubprovider = new NonceTrackerSubprovider();
|
||||
provider.addProvider(nonceTrackerSubprovider);
|
||||
provider.addProvider(new FixtureSubprovider({
|
||||
'eth_getBlockByNumber': '0x01',
|
||||
'eth_getTransactionCount': (data: any, next: any, end: any) => {
|
||||
if (called) {
|
||||
return end(null, '0x99');
|
||||
} else {
|
||||
called = true;
|
||||
end(null, '0x01');
|
||||
}
|
||||
},
|
||||
}));
|
||||
provider.addProvider(
|
||||
new FixtureSubprovider({
|
||||
eth_getBlockByNumber: '0x01',
|
||||
eth_getTransactionCount: (data: any, next: any, end: any) => {
|
||||
if (called) {
|
||||
return end(null, '0x99');
|
||||
} else {
|
||||
called = true;
|
||||
end(null, '0x01');
|
||||
}
|
||||
},
|
||||
}),
|
||||
);
|
||||
provider.start();
|
||||
|
||||
const payload = {
|
||||
@@ -54,17 +51,19 @@ describe('NonceTrackerSubprovider', () => {
|
||||
let called = false;
|
||||
const nonceTrackerSubprovider = new NonceTrackerSubprovider();
|
||||
provider.addProvider(nonceTrackerSubprovider);
|
||||
provider.addProvider(new FixtureSubprovider({
|
||||
'eth_getBlockByNumber': '0x01',
|
||||
'eth_getTransactionCount': (data: any, next: any, end: any) => {
|
||||
if (called) {
|
||||
return end(null, '0x99');
|
||||
} else {
|
||||
called = true;
|
||||
end(null, '0x01');
|
||||
}
|
||||
},
|
||||
}));
|
||||
provider.addProvider(
|
||||
new FixtureSubprovider({
|
||||
eth_getBlockByNumber: '0x01',
|
||||
eth_getTransactionCount: (data: any, next: any, end: any) => {
|
||||
if (called) {
|
||||
return end(null, '0x99');
|
||||
} else {
|
||||
called = true;
|
||||
end(null, '0x01');
|
||||
}
|
||||
},
|
||||
}),
|
||||
);
|
||||
provider.start();
|
||||
|
||||
const payload = {
|
||||
@@ -84,20 +83,22 @@ describe('NonceTrackerSubprovider', () => {
|
||||
let called = false;
|
||||
const nonceTrackerSubprovider = new NonceTrackerSubprovider();
|
||||
provider.addProvider(nonceTrackerSubprovider);
|
||||
provider.addProvider(new FixtureSubprovider({
|
||||
'eth_getBlockByNumber': '0x01',
|
||||
'eth_getTransactionCount': (data: any, next: any, end: any) => {
|
||||
if (called) {
|
||||
return end(null, '0x99');
|
||||
} else {
|
||||
called = true;
|
||||
end(null, '0x01');
|
||||
}
|
||||
},
|
||||
'eth_sendRawTransaction': (data: any, next: any, end: any) => {
|
||||
end(new Error('Transaction nonce is too low'));
|
||||
},
|
||||
}));
|
||||
provider.addProvider(
|
||||
new FixtureSubprovider({
|
||||
eth_getBlockByNumber: '0x01',
|
||||
eth_getTransactionCount: (data: any, next: any, end: any) => {
|
||||
if (called) {
|
||||
return end(null, '0x99');
|
||||
} else {
|
||||
called = true;
|
||||
end(null, '0x01');
|
||||
}
|
||||
},
|
||||
eth_sendRawTransaction: (data: any, next: any, end: any) => {
|
||||
end(new Error('Transaction nonce is too low'));
|
||||
},
|
||||
}),
|
||||
);
|
||||
provider.start();
|
||||
|
||||
const noncePayload = {
|
||||
@@ -115,7 +116,7 @@ describe('NonceTrackerSubprovider', () => {
|
||||
'0x7f7465737432000000000000000000000000000000000000000000000000000000600057',
|
||||
'0x1c',
|
||||
'0x5e1d3a76fbf824220eafc8c79ad578ad2b67d01b0c2425eb1f1347e8f50882ab',
|
||||
'0x5bd428537f05f9830e93792f90ea6a3e2d1ee84952dd96edbae9f658f831ab13'
|
||||
'0x5bd428537f05f9830e93792f90ea6a3e2d1ee84952dd96edbae9f658f831ab13',
|
||||
];
|
||||
|
||||
const transaction = new EthereumTx(txParams);
|
||||
@@ -131,7 +132,7 @@ describe('NonceTrackerSubprovider', () => {
|
||||
const secondResponse = await promisify(provider.sendAsync, provider)(noncePayload);
|
||||
expect(secondResponse.result).to.be.eq('0x01');
|
||||
try {
|
||||
const txResponse = await promisify(provider.sendAsync, provider)(txPayload);
|
||||
await promisify(provider.sendAsync, provider)(txPayload);
|
||||
} catch (err) {
|
||||
const thirdResponse = await promisify(provider.sendAsync, provider)(noncePayload);
|
||||
expect(thirdResponse.result).to.be.eq('0x99');
|
||||
@@ -142,20 +143,22 @@ describe('NonceTrackerSubprovider', () => {
|
||||
let called = false;
|
||||
const nonceTrackerSubprovider = new NonceTrackerSubprovider();
|
||||
provider.addProvider(nonceTrackerSubprovider);
|
||||
provider.addProvider(new FixtureSubprovider({
|
||||
'eth_getBlockByNumber': '0x01',
|
||||
'eth_getTransactionCount': (data: any, next: any, end: any) => {
|
||||
if (called) {
|
||||
return end(null, '0x99');
|
||||
} else {
|
||||
called = true;
|
||||
end(null, '0x00');
|
||||
}
|
||||
},
|
||||
'eth_sendRawTransaction': (data: any, next: any, end: any) => {
|
||||
end(null);
|
||||
},
|
||||
}));
|
||||
provider.addProvider(
|
||||
new FixtureSubprovider({
|
||||
eth_getBlockByNumber: '0x01',
|
||||
eth_getTransactionCount: (data: any, next: any, end: any) => {
|
||||
if (called) {
|
||||
return end(null, '0x99');
|
||||
} else {
|
||||
called = true;
|
||||
end(null, '0x00');
|
||||
}
|
||||
},
|
||||
eth_sendRawTransaction: (data: any, next: any, end: any) => {
|
||||
end(null);
|
||||
},
|
||||
}),
|
||||
);
|
||||
provider.start();
|
||||
|
||||
const noncePayload = {
|
||||
@@ -173,7 +176,7 @@ describe('NonceTrackerSubprovider', () => {
|
||||
'0x7f7465737432000000000000000000000000000000000000000000000000000000600057',
|
||||
'0x1c',
|
||||
'0x5e1d3a76fbf824220eafc8c79ad578ad2b67d01b0c2425eb1f1347e8f50882ab',
|
||||
'0x5bd428537f05f9830e93792f90ea6a3e2d1ee84952dd96edbae9f658f831ab13'
|
||||
'0x5bd428537f05f9830e93792f90ea6a3e2d1ee84952dd96edbae9f658f831ab13',
|
||||
];
|
||||
|
||||
const transaction = new EthereumTx(txParams);
|
||||
@@ -188,7 +191,7 @@ describe('NonceTrackerSubprovider', () => {
|
||||
expect(response.result).to.be.eq('0x00');
|
||||
const secondResponse = await promisify(provider.sendAsync, provider)(noncePayload);
|
||||
expect(secondResponse.result).to.be.eq('0x00');
|
||||
const txResponse = await promisify(provider.sendAsync, provider)(txPayload);
|
||||
await promisify(provider.sendAsync, provider)(txPayload);
|
||||
const thirdResponse = await promisify(provider.sendAsync, provider)(noncePayload);
|
||||
expect(thirdResponse.result).to.be.eq('0x01');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user