diff --git a/CHANGELOG.md b/CHANGELOG.md index 8d2442f689..206c706be3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,11 @@ and this project adheres to ## [Unreleased] +### Fixed + +- @cosmjs/cosmwasm-stargate: Use `CosmWasmFeeTable` instead of `CosmosFeeTable` + in `SigningCosmWasmClientOptions`; export type `CosmWasmFeeTable`. + ## [0.25.0] - 2021-05-05 ### Added diff --git a/packages/cosmwasm-launchpad/src/signingcosmwasmclient.spec.ts b/packages/cosmwasm-launchpad/src/signingcosmwasmclient.spec.ts index 48978cb888..d669453366 100644 --- a/packages/cosmwasm-launchpad/src/signingcosmwasmclient.spec.ts +++ b/packages/cosmwasm-launchpad/src/signingcosmwasmclient.spec.ts @@ -16,7 +16,7 @@ import { assert } from "@cosmjs/utils"; import { PrivateCosmWasmClient } from "./cosmwasmclient"; import { setupWasmExtension, WasmExtension } from "./lcdapi/wasm"; -import { PrivateSigningCosmWasmClient, SigningCosmWasmClient, UploadMeta } from "./signingcosmwasmclient"; +import { SigningCosmWasmClient, UploadMeta } from "./signingcosmwasmclient"; import { alice, getHackatom, @@ -42,8 +42,7 @@ describe("SigningCosmWasmClient", () => { const wallet = await Secp256k1HdWallet.fromMnemonic(alice.mnemonic); const gasPrice = GasPrice.fromString("3.14utest"); const client = new SigningCosmWasmClient(launchpad.endpoint, alice.address0, wallet, gasPrice); - const openedClient = (client as unknown) as PrivateSigningCosmWasmClient; - expect(openedClient.fees).toEqual({ + expect(client.fees).toEqual({ upload: { amount: [ { @@ -113,8 +112,7 @@ describe("SigningCosmWasmClient", () => { undefined, gasLimits, ); - const openedClient = (client as unknown) as PrivateSigningCosmWasmClient; - expect(openedClient.fees).toEqual({ + expect(client.fees).toEqual({ upload: { amount: [ { @@ -185,8 +183,7 @@ describe("SigningCosmWasmClient", () => { gasPrice, gasLimits, ); - const openedClient = (client as unknown) as PrivateSigningCosmWasmClient; - expect(openedClient.fees).toEqual({ + expect(client.fees).toEqual({ upload: { amount: [ { diff --git a/packages/cosmwasm-launchpad/src/signingcosmwasmclient.ts b/packages/cosmwasm-launchpad/src/signingcosmwasmclient.ts index 3235096c54..693df2a61d 100644 --- a/packages/cosmwasm-launchpad/src/signingcosmwasmclient.ts +++ b/packages/cosmwasm-launchpad/src/signingcosmwasmclient.ts @@ -143,11 +143,6 @@ function createBroadcastTxErrorMessage(result: BroadcastTxFailure): string { return `Error when broadcasting tx ${result.transactionHash} at height ${result.height}. Code: ${result.code}; Raw log: ${result.rawLog}`; } -/** Use for testing only */ -export interface PrivateSigningCosmWasmClient { - readonly fees: CosmWasmFeeTable; -} - export class SigningCosmWasmClient extends CosmWasmClient { public readonly fees: CosmWasmFeeTable; public readonly signerAddress: string; diff --git a/packages/cosmwasm-stargate/src/index.ts b/packages/cosmwasm-stargate/src/index.ts index ae8a2d2489..3e60a6baa6 100644 --- a/packages/cosmwasm-stargate/src/index.ts +++ b/packages/cosmwasm-stargate/src/index.ts @@ -16,6 +16,7 @@ export { } from "./encodeobjects"; export { defaultGasLimits, + CosmWasmFeeTable, // part of SigningCosmWasmClientOptions SigningCosmWasmClient, SigningCosmWasmClientOptions, } from "./signingcosmwasmclient"; diff --git a/packages/cosmwasm-stargate/src/signingcosmwasmclient.spec.ts b/packages/cosmwasm-stargate/src/signingcosmwasmclient.spec.ts index eb233981e2..8d2d13cf17 100644 --- a/packages/cosmwasm-stargate/src/signingcosmwasmclient.spec.ts +++ b/packages/cosmwasm-stargate/src/signingcosmwasmclient.spec.ts @@ -25,7 +25,7 @@ import protobuf from "protobufjs/minimal"; import { MsgStoreCode } from "./codec/cosmwasm/wasm/v1beta1/tx"; import { MsgStoreCodeEncodeObject } from "./encodeobjects"; -import { PrivateSigningCosmWasmClient, SigningCosmWasmClient } from "./signingcosmwasmclient"; +import { SigningCosmWasmClient } from "./signingcosmwasmclient"; import { alice, getHackatom, @@ -56,8 +56,7 @@ describe("SigningCosmWasmClient", () => { registry.register("/custom.MsgCustom", MsgSend); const options = { prefix: wasmd.prefix, registry: registry }; const client = await SigningCosmWasmClient.connectWithSigner(wasmd.endpoint, wallet, options); - const openedClient = (client as unknown) as PrivateSigningCosmWasmClient; - expect(openedClient.registry.lookupType("/custom.MsgCustom")).toEqual(MsgSend); + expect(client.registry.lookupType("/custom.MsgCustom")).toEqual(MsgSend); }); it("can be constructed with custom gas price", async () => { @@ -68,8 +67,7 @@ describe("SigningCosmWasmClient", () => { gasPrice: GasPrice.fromString("3.14utest"), }; const client = await SigningCosmWasmClient.connectWithSigner(wasmd.endpoint, wallet, options); - const openedClient = (client as unknown) as PrivateSigningCosmWasmClient; - expect(openedClient.fees).toEqual({ + expect(client.fees).toEqual({ upload: { amount: coins(4710000, "utest"), gas: "1500000", @@ -123,8 +121,7 @@ describe("SigningCosmWasmClient", () => { }, }; const client = await SigningCosmWasmClient.connectWithSigner(wasmd.endpoint, wallet, options); - const openedClient = (client as unknown) as PrivateSigningCosmWasmClient; - expect(openedClient.fees).toEqual({ + expect(client.fees).toEqual({ upload: { amount: coins(37500, "ucosm"), gas: "1500000", @@ -179,8 +176,7 @@ describe("SigningCosmWasmClient", () => { }, }; const client = await SigningCosmWasmClient.connectWithSigner(wasmd.endpoint, wallet, options); - const openedClient = (client as unknown) as PrivateSigningCosmWasmClient; - expect(openedClient.fees).toEqual({ + expect(client.fees).toEqual({ upload: { amount: coins(4710000, "utest"), gas: "1500000", diff --git a/packages/cosmwasm-stargate/src/signingcosmwasmclient.ts b/packages/cosmwasm-stargate/src/signingcosmwasmclient.ts index c62f7da47f..5131987022 100644 --- a/packages/cosmwasm-stargate/src/signingcosmwasmclient.ts +++ b/packages/cosmwasm-stargate/src/signingcosmwasmclient.ts @@ -123,17 +123,11 @@ export interface SigningCosmWasmClientOptions { readonly aminoTypes?: AminoTypes; readonly prefix?: string; readonly gasPrice?: GasPrice; - readonly gasLimits?: Partial>; -} - -/** Use for testing only */ -export interface PrivateSigningCosmWasmClient { - readonly fees: CosmWasmFeeTable; - readonly registry: Registry; + readonly gasLimits?: Partial>; } export class SigningCosmWasmClient extends CosmWasmClient { - public readonly fees: CosmosFeeTable; + public readonly fees: CosmWasmFeeTable; public readonly registry: Registry; private readonly signer: OfflineSigner; @@ -176,7 +170,7 @@ export class SigningCosmWasmClient extends CosmWasmClient { gasPrice = defaultGasPrice, gasLimits = {}, } = options; - this.fees = buildFeeTable(gasPrice, defaultGasLimits, gasLimits); + this.fees = buildFeeTable(gasPrice, defaultGasLimits, gasLimits); this.registry = registry; this.aminoTypes = aminoTypes; this.signer = signer;