From f28d648fac8e6c94c3b1a0c15b0e3794af8dde84 Mon Sep 17 00:00:00 2001 From: Ian He <39037239+ianhe8x@users.noreply.github.com> Date: Wed, 15 Sep 2021 15:31:35 +1200 Subject: [PATCH] HttpProvider support clone() (#3949) * HttpProvider support clone() * fix lint --- packages/rpc-provider/src/http/index.spec.ts | 8 ++++++++ packages/rpc-provider/src/http/index.ts | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/rpc-provider/src/http/index.spec.ts b/packages/rpc-provider/src/http/index.spec.ts index bf91962ec5..1ca1880dd4 100644 --- a/packages/rpc-provider/src/http/index.spec.ts +++ b/packages/rpc-provider/src/http/index.spec.ts @@ -29,6 +29,14 @@ describe('Http', (): void => { ).not.toThrow(); }); + it('allow clone', (): void => { + const clone = http.clone(); + /* eslint-disable */ + expect((clone as any)['#endpoint']).toEqual((http as any)['#endpoint']); + expect((clone as any)['#headers']).toEqual((http as any)['#headers']); + /* eslint-enable */ + }); + it('always returns isConnected true', (): void => { expect(http.isConnected).toEqual(true); }); diff --git a/packages/rpc-provider/src/http/index.ts b/packages/rpc-provider/src/http/index.ts index 79514e328c..fb5065b928 100644 --- a/packages/rpc-provider/src/http/index.ts +++ b/packages/rpc-provider/src/http/index.ts @@ -62,7 +62,7 @@ export class HttpProvider implements ProviderInterface { * @description Returns a clone of the object */ public clone (): HttpProvider { - throw new Error('Unimplemented'); + return new HttpProvider(this.#endpoint, this.#headers); } /**