mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-10-04 23:07:06 +00:00
Merge pull request #30910 from c-o-l-o-r/fix-provider-send-params
[web3] Make the parameters in the provider class' send function optional
This commit is contained in:
Vendored
+6
-4
@@ -12,11 +12,13 @@ interface JsonRPCResponse {
|
||||
error?: string;
|
||||
}
|
||||
|
||||
interface Callback<ResultType> {
|
||||
(error: Error): void;
|
||||
(error: null, val: ResultType): void;
|
||||
}
|
||||
|
||||
export class Provider {
|
||||
send(
|
||||
payload: JsonRPCRequest,
|
||||
callback: (e: Error, val: JsonRPCResponse) => void
|
||||
): any;
|
||||
send(payload: JsonRPCRequest, callback: Callback<JsonRPCResponse>): any;
|
||||
}
|
||||
|
||||
export class WebsocketProvider extends Provider {
|
||||
|
||||
@@ -2,6 +2,7 @@ import Web3 = require("web3");
|
||||
import BigNumber = require("bn.js");
|
||||
import { TransactionReceipt } from "web3/types";
|
||||
import PromiEvent from "web3/promiEvent";
|
||||
import { Provider, JsonRPCResponse } from "web3/providers";
|
||||
|
||||
const contractAddress = "0xde0B295669a9FD93d5F28D9Ec85E40f4cb697BAe";
|
||||
|
||||
@@ -10,6 +11,25 @@ const contractAddress = "0xde0B295669a9FD93d5F28D9Ec85E40f4cb697BAe";
|
||||
// --------------------------------------------------------------------------
|
||||
const web3 = new Web3();
|
||||
const myProvider = new web3.providers.HttpProvider("http://localhost:5454");
|
||||
|
||||
const createFailingHttpProvider = (): Provider => ({
|
||||
send(payload, callback) {
|
||||
callback(new Error("Illegal!"));
|
||||
}
|
||||
});
|
||||
|
||||
const createSuccesfulHttpProvider = (): Provider => ({
|
||||
send(payload, callback) {
|
||||
const response = {};
|
||||
callback(null, response as JsonRPCResponse);
|
||||
}
|
||||
});
|
||||
|
||||
const fakeProvider: Provider = createFailingHttpProvider();
|
||||
const otherFakeProvider: Provider = createSuccesfulHttpProvider();
|
||||
|
||||
web3.setProvider(fakeProvider);
|
||||
web3.setProvider(otherFakeProvider);
|
||||
web3.setProvider(myProvider);
|
||||
web3.eth.setProvider(myProvider);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user