diff --git a/.circleci/config.yml b/.circleci/config.yml index 563bf01e..45ee54c6 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -89,8 +89,7 @@ jobs: environment: WASMD_ENABLED: 1 SKIP_BUILD: 1 - # TODO: Remove concurrency argument to speed up testing (https://github.com/CosmWasm/cosmwasm-js/issues/185) - command: yarn test --concurrency 1 --stream + command: yarn test --stream - run: name: Run CLI selftest working_directory: packages/cli diff --git a/packages/cosmwasm/src/cosmwasmclient.searchtx.spec.ts b/packages/cosmwasm/src/cosmwasmclient.searchtx.spec.ts index e7f981ea..48c70c93 100644 --- a/packages/cosmwasm/src/cosmwasmclient.searchtx.spec.ts +++ b/packages/cosmwasm/src/cosmwasmclient.searchtx.spec.ts @@ -7,8 +7,8 @@ import { isMsgExecuteContract, isMsgInstantiateContract } from "./msgs"; import { RestClient } from "./restclient"; import { SigningCosmWasmClient } from "./signingcosmwasmclient"; import { + alice, deployedErc20, - faucet, fromOneElementArray, makeRandomAddress, pendingWithoutWasmd, @@ -47,8 +47,8 @@ describe("CosmWasmClient.searchTx", () => { beforeAll(async () => { if (wasmdEnabled()) { - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(wasmd.endpoint, faucet.address, (signBytes) => + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(wasmd.endpoint, alice.address0, (signBytes) => pen.sign(signBytes), ); @@ -62,7 +62,7 @@ describe("CosmWasmClient.searchTx", () => { await sleep(50); // wait until tx is indexed const txDetails = await new RestClient(wasmd.endpoint).txById(result.transactionHash); sendSuccessful = { - sender: faucet.address, + sender: alice.address0, recipient: recipient, hash: result.transactionHash, height: Number.parseInt(txDetails.height, 10), @@ -83,7 +83,7 @@ describe("CosmWasmClient.searchTx", () => { type: "cosmos-sdk/MsgSend", value: { // eslint-disable-next-line @typescript-eslint/camelcase - from_address: faucet.address, + from_address: alice.address0, // eslint-disable-next-line @typescript-eslint/camelcase to_address: recipient, amount: transferAmount, @@ -120,7 +120,7 @@ describe("CosmWasmClient.searchTx", () => { // console.log(error); } sendUnsuccessful = { - sender: faucet.address, + sender: alice.address0, recipient: recipient, hash: transactionId, height: heightBeforeThis + 1, @@ -140,7 +140,7 @@ describe("CosmWasmClient.searchTx", () => { await sleep(50); // wait until tx is indexed const txDetails = await new RestClient(wasmd.endpoint).txById(result.transactionHash); postedExecute = { - sender: faucet.address, + sender: alice.address0, contract: hashInstance, hash: result.transactionHash, height: Number.parseInt(txDetails.height, 10), @@ -225,8 +225,8 @@ describe("CosmWasmClient.searchTx", () => { assert(sendSuccessful, "value must be set in beforeAll()"); const client = new CosmWasmClient(wasmd.endpoint); const result = await client.searchTx({ height: sendSuccessful.height }); - expect(result.length).toEqual(1); - expect(result[0]).toEqual( + expect(result.length).toBeGreaterThanOrEqual(1); + expect(result).toContain( jasmine.objectContaining({ height: sendSuccessful.height, hash: sendSuccessful.hash, @@ -241,8 +241,8 @@ describe("CosmWasmClient.searchTx", () => { assert(sendUnsuccessful, "value must be set in beforeAll()"); const client = new CosmWasmClient(wasmd.endpoint); const result = await client.searchTx({ height: sendUnsuccessful.height }); - expect(result.length).toEqual(1); - expect(result[0]).toEqual( + expect(result.length).toBeGreaterThanOrEqual(1); + expect(result).toContain( jasmine.objectContaining({ height: sendUnsuccessful.height, hash: sendUnsuccessful.hash, @@ -415,7 +415,7 @@ describe("CosmWasmClient.searchTx", () => { expect(first).toEqual({ type: "wasm/instantiate", value: { - sender: faucet.address, + sender: alice.address0, code_id: deployedErc20.codeId.toString(), label: "HASH", init_msg: jasmine.objectContaining({ symbol: "HASH" }), diff --git a/packages/cosmwasm/src/cosmwasmclient.spec.ts b/packages/cosmwasm/src/cosmwasmclient.spec.ts index 011e1495..32255042 100644 --- a/packages/cosmwasm/src/cosmwasmclient.spec.ts +++ b/packages/cosmwasm/src/cosmwasmclient.spec.ts @@ -10,8 +10,8 @@ import { findAttribute } from "./logs"; import { SigningCosmWasmClient } from "./signingcosmwasmclient"; import cosmoshub from "./testdata/cosmoshub.json"; import { + alice, deployedErc20, - faucet, getHackatom, makeRandomAddress, pendingWithoutWasmd, @@ -202,14 +202,14 @@ describe("CosmWasmClient", () => { describe("postTx", () => { it("works", async () => { pendingWithoutWasmd(); - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); const client = new CosmWasmClient(wasmd.endpoint); const memo = "My first contract on chain"; const sendMsg: MsgSend = { type: "cosmos-sdk/MsgSend", value: { - from_address: faucet.address, + from_address: alice.address0, to_address: makeRandomAddress(), amount: [ { @@ -231,7 +231,7 @@ describe("CosmWasmClient", () => { }; const chainId = await client.getChainId(); - const { accountNumber, sequence } = await client.getNonce(faucet.address); + const { accountNumber, sequence } = await client.getNonce(alice.address0); const signBytes = makeSignBytes([sendMsg], fee, chainId, memo, accountNumber, sequence); const signature = await pen.sign(signBytes); const signedTx = { @@ -259,7 +259,7 @@ describe("CosmWasmClient", () => { source: deployedErc20.source, builder: deployedErc20.builder, checksum: deployedErc20.checksum, - creator: faucet.address, + creator: alice.address0, }); }); }); @@ -275,7 +275,7 @@ describe("CosmWasmClient", () => { source: deployedErc20.source, builder: deployedErc20.builder, checksum: deployedErc20.checksum, - creator: faucet.address, + creator: alice.address0, }; // check info @@ -308,19 +308,19 @@ describe("CosmWasmClient", () => { expect(hash).toEqual({ address: "cosmos18vd8fpwxzck93qlwghaj6arh4p7c5n89uzcee5", codeId: 1, - creator: faucet.address, + creator: alice.address0, label: "HASH", }); expect(isa).toEqual({ address: "cosmos1hqrdl6wstt8qzshwc6mrumpjk9338k0lr4dqxd", codeId: 1, - creator: faucet.address, + creator: alice.address0, label: "ISA", }); expect(jade).toEqual({ address: "cosmos18r5szma8hm93pvx6lwpjwyxruw27e0k5uw835c", codeId: 1, - creator: faucet.address, + creator: alice.address0, label: "JADE", }); }); @@ -334,7 +334,7 @@ describe("CosmWasmClient", () => { expect(hash).toEqual({ address: "cosmos18vd8fpwxzck93qlwghaj6arh4p7c5n89uzcee5", codeId: 1, - creator: faucet.address, + creator: alice.address0, label: "HASH", initMsg: { decimals: 5, @@ -342,7 +342,7 @@ describe("CosmWasmClient", () => { symbol: "HASH", initial_balances: jasmine.arrayContaining([ { - address: faucet.address, + address: alice.address0, amount: "11", }, { @@ -367,8 +367,8 @@ describe("CosmWasmClient", () => { beforeAll(async () => { if (wasmdEnabled()) { pendingWithoutWasmd(); - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(wasmd.endpoint, faucet.address, (signBytes) => + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(wasmd.endpoint, alice.address0, (signBytes) => pen.sign(signBytes), ); const { codeId } = await client.upload(getHackatom()); @@ -388,7 +388,7 @@ describe("CosmWasmClient", () => { expect(JSON.parse(fromUtf8(raw))).toEqual({ verifier: toBase64(Bech32.decode(contract.initMsg.verifier).data), beneficiary: toBase64(Bech32.decode(contract.initMsg.beneficiary).data), - funder: toBase64(Bech32.decode(faucet.address).data), + funder: toBase64(Bech32.decode(alice.address0).data), }); }); @@ -420,8 +420,8 @@ describe("CosmWasmClient", () => { beforeAll(async () => { if (wasmdEnabled()) { pendingWithoutWasmd(); - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(wasmd.endpoint, faucet.address, (signBytes) => + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(wasmd.endpoint, alice.address0, (signBytes) => pen.sign(signBytes), ); const { codeId } = await client.upload(getHackatom()); diff --git a/packages/cosmwasm/src/restclient.spec.ts b/packages/cosmwasm/src/restclient.spec.ts index 1ee42402..1d930804 100644 --- a/packages/cosmwasm/src/restclient.spec.ts +++ b/packages/cosmwasm/src/restclient.spec.ts @@ -31,9 +31,9 @@ import { RestClient, TxsResponse } from "./restclient"; import { SigningCosmWasmClient } from "./signingcosmwasmclient"; import cosmoshub from "./testdata/cosmoshub.json"; import { + alice, bech32AddressMatcher, deployedErc20, - faucet, fromOneElementArray, getHackatom, makeRandomAddress, @@ -71,7 +71,7 @@ async function uploadCustomContract( const theMsg: MsgStoreCode = { type: "wasm/store-code", value: { - sender: faucet.address, + sender: alice.address0, wasm_byte_code: toBase64(wasmCode), source: "https://github.com/confio/cosmwasm/raw/0.7/lib/vm/testdata/contract_0.6.wasm", builder: "confio/cosmwasm-opt:0.6.2", @@ -87,7 +87,7 @@ async function uploadCustomContract( gas: "89000000", }; - const { account_number, sequence } = (await client.authAccounts(faucet.address)).result.value; + const { account_number, sequence } = (await client.authAccounts(alice.address0)).result.value; const signBytes = makeSignBytes([theMsg], fee, wasmd.chainId, memo, account_number, sequence); const signature = await pen.sign(signBytes); const signedTx = makeSignedTx(theMsg, fee, memo, signature); @@ -109,11 +109,11 @@ async function instantiateContract( const theMsg: MsgInstantiateContract = { type: "wasm/instantiate", value: { - sender: faucet.address, + sender: alice.address0, code_id: codeId.toString(), label: "my escrow", init_msg: { - verifier: faucet.address, + verifier: alice.address0, beneficiary: beneficiaryAddress, }, init_funds: transferAmount || [], @@ -129,7 +129,7 @@ async function instantiateContract( gas: "89000000", }; - const { account_number, sequence } = (await client.authAccounts(faucet.address)).result.value; + const { account_number, sequence } = (await client.authAccounts(alice.address0)).result.value; const signBytes = makeSignBytes([theMsg], fee, wasmd.chainId, memo, account_number, sequence); const signature = await pen.sign(signBytes); const signedTx = makeSignedTx(theMsg, fee, memo, signature); @@ -145,7 +145,7 @@ async function executeContract( const theMsg: MsgExecuteContract = { type: "wasm/execute", value: { - sender: faucet.address, + sender: alice.address0, contract: contractAddress, msg: { release: {} }, sent_funds: [], @@ -161,7 +161,7 @@ async function executeContract( gas: "89000000", }; - const { account_number, sequence } = (await client.authAccounts(faucet.address)).result.value; + const { account_number, sequence } = (await client.authAccounts(alice.address0)).result.value; const signBytes = makeSignBytes([theMsg], fee, wasmd.chainId, memo, account_number, sequence); const signature = await pen.sign(signBytes); const signedTx = makeSignedTx(theMsg, fee, memo, signature); @@ -207,10 +207,10 @@ describe("RestClient", () => { it("has correct pubkey for faucet", async () => { pendingWithoutWasmd(); const client = new RestClient(wasmd.endpoint); - const { result } = await client.authAccounts(faucet.address); + const { result } = await client.authAccounts(alice.address0); expect(result.value).toEqual( jasmine.objectContaining({ - public_key: encodeBech32Pubkey(faucet.pubkey, "cosmospub"), + public_key: encodeBech32Pubkey(alice.pubkey0, "cosmospub"), }), ); }); @@ -347,8 +347,8 @@ describe("RestClient", () => { beforeAll(async () => { if (wasmdEnabled()) { - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(wasmd.endpoint, faucet.address, (signBytes) => + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(wasmd.endpoint, alice.address0, (signBytes) => pen.sign(signBytes), ); @@ -360,7 +360,7 @@ describe("RestClient", () => { }; const result = await client.sendTokens(recipient, [transferAmount]); successful = { - sender: faucet.address, + sender: alice.address0, recipient: recipient, hash: result.transactionHash, }; @@ -379,7 +379,7 @@ describe("RestClient", () => { type: "cosmos-sdk/MsgSend", value: { // eslint-disable-next-line @typescript-eslint/camelcase - from_address: faucet.address, + from_address: alice.address0, // eslint-disable-next-line @typescript-eslint/camelcase to_address: recipient, amount: transferAmount, @@ -412,7 +412,7 @@ describe("RestClient", () => { // console.log(error); } unsuccessful = { - sender: faucet.address, + sender: alice.address0, recipient: recipient, hash: transactionId, }; @@ -485,8 +485,8 @@ describe("RestClient", () => { beforeAll(async () => { if (wasmdEnabled()) { - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(wasmd.endpoint, faucet.address, (signBytes) => + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(wasmd.endpoint, alice.address0, (signBytes) => pen.sign(signBytes), ); @@ -502,7 +502,7 @@ describe("RestClient", () => { await sleep(50); // wait until tx is indexed const txDetails = await new RestClient(wasmd.endpoint).txById(result.transactionHash); posted = { - sender: faucet.address, + sender: alice.address0, recipient: recipient, hash: result.transactionHash, height: Number.parseInt(txDetails.height, 10), @@ -666,7 +666,7 @@ describe("RestClient", () => { assert(isMsgInstantiateContract(jade)); expect(store.value).toEqual( jasmine.objectContaining({ - sender: faucet.address, + sender: alice.address0, source: deployedErc20.source, builder: deployedErc20.builder, }), @@ -678,21 +678,21 @@ describe("RestClient", () => { symbol: "HASH", }), label: "HASH", - sender: faucet.address, + sender: alice.address0, }); expect(isa.value).toEqual({ code_id: deployedErc20.codeId.toString(), init_funds: [], init_msg: jasmine.objectContaining({ symbol: "ISA" }), label: "ISA", - sender: faucet.address, + sender: alice.address0, }); expect(jade.value).toEqual({ code_id: deployedErc20.codeId.toString(), init_funds: [], init_msg: jasmine.objectContaining({ symbol: "JADE" }), label: "JADE", - sender: faucet.address, + sender: alice.address0, }); }); @@ -711,7 +711,7 @@ describe("RestClient", () => { assert(isMsgStoreCode(store)); expect(store.value).toEqual( jasmine.objectContaining({ - sender: faucet.address, + sender: alice.address0, source: deployedErc20.source, builder: deployedErc20.builder, }), @@ -734,21 +734,21 @@ describe("RestClient", () => { symbol: "HASH", }), label: "HASH", - sender: faucet.address, + sender: alice.address0, }); expect(isa.value).toEqual({ code_id: deployedErc20.codeId.toString(), init_funds: [], init_msg: jasmine.objectContaining({ symbol: "ISA" }), label: "ISA", - sender: faucet.address, + sender: alice.address0, }); expect(jade.value).toEqual({ code_id: deployedErc20.codeId.toString(), init_funds: [], init_msg: jasmine.objectContaining({ symbol: "JADE" }), label: "JADE", - sender: faucet.address, + sender: alice.address0, }); } }); @@ -765,13 +765,13 @@ describe("RestClient", () => { describe("postTx", () => { it("can send tokens", async () => { pendingWithoutWasmd(); - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); const memo = "My first contract on chain"; const theMsg: MsgSend = { type: "cosmos-sdk/MsgSend", value: { - from_address: faucet.address, + from_address: alice.address0, to_address: emptyAddress, amount: [ { @@ -793,7 +793,7 @@ describe("RestClient", () => { }; const client = new RestClient(wasmd.endpoint); - const { account_number, sequence } = (await client.authAccounts(faucet.address)).result.value; + const { account_number, sequence } = (await client.authAccounts(alice.address0)).result.value; const signBytes = makeSignBytes([theMsg], fee, wasmd.chainId, memo, account_number, sequence); const signature = await pen.sign(signBytes); @@ -813,9 +813,9 @@ describe("RestClient", () => { it("can't send transaction with additional signatures", async () => { pendingWithoutWasmd(); - const account1 = await Secp256k1Pen.fromMnemonic(faucet.mnemonic, makeCosmoshubPath(0)); - const account2 = await Secp256k1Pen.fromMnemonic(faucet.mnemonic, makeCosmoshubPath(1)); - const account3 = await Secp256k1Pen.fromMnemonic(faucet.mnemonic, makeCosmoshubPath(2)); + const account1 = await Secp256k1Pen.fromMnemonic(alice.mnemonic, makeCosmoshubPath(0)); + const account2 = await Secp256k1Pen.fromMnemonic(alice.mnemonic, makeCosmoshubPath(1)); + const account3 = await Secp256k1Pen.fromMnemonic(alice.mnemonic, makeCosmoshubPath(2)); const address1 = rawSecp256k1PubkeyToAddress(account1.pubkey, "cosmos"); const address2 = rawSecp256k1PubkeyToAddress(account2.pubkey, "cosmos"); const address3 = rawSecp256k1PubkeyToAddress(account3.pubkey, "cosmos"); @@ -870,7 +870,7 @@ describe("RestClient", () => { it("can send multiple messages with one signature", async () => { pendingWithoutWasmd(); - const account1 = await Secp256k1Pen.fromMnemonic(faucet.mnemonic, makeCosmoshubPath(0)); + const account1 = await Secp256k1Pen.fromMnemonic(alice.mnemonic, makeCosmoshubPath(0)); const address1 = rawSecp256k1PubkeyToAddress(account1.pubkey, "cosmos"); const memo = "My first contract on chain"; @@ -929,8 +929,8 @@ describe("RestClient", () => { it("can send multiple messages with multiple signatures", async () => { pendingWithoutWasmd(); - const account1 = await Secp256k1Pen.fromMnemonic(faucet.mnemonic, makeCosmoshubPath(0)); - const account2 = await Secp256k1Pen.fromMnemonic(faucet.mnemonic, makeCosmoshubPath(1)); + const account1 = await Secp256k1Pen.fromMnemonic(alice.mnemonic, makeCosmoshubPath(0)); + const account2 = await Secp256k1Pen.fromMnemonic(alice.mnemonic, makeCosmoshubPath(1)); const address1 = rawSecp256k1PubkeyToAddress(account1.pubkey, "cosmos"); const address2 = rawSecp256k1PubkeyToAddress(account2.pubkey, "cosmos"); @@ -998,8 +998,8 @@ describe("RestClient", () => { it("can't send transaction with wrong signature order (1)", async () => { pendingWithoutWasmd(); - const account1 = await Secp256k1Pen.fromMnemonic(faucet.mnemonic, makeCosmoshubPath(0)); - const account2 = await Secp256k1Pen.fromMnemonic(faucet.mnemonic, makeCosmoshubPath(1)); + const account1 = await Secp256k1Pen.fromMnemonic(alice.mnemonic, makeCosmoshubPath(0)); + const account2 = await Secp256k1Pen.fromMnemonic(alice.mnemonic, makeCosmoshubPath(1)); const address1 = rawSecp256k1PubkeyToAddress(account1.pubkey, "cosmos"); const address2 = rawSecp256k1PubkeyToAddress(account2.pubkey, "cosmos"); @@ -1062,8 +1062,8 @@ describe("RestClient", () => { it("can't send transaction with wrong signature order (2)", async () => { pendingWithoutWasmd(); - const account1 = await Secp256k1Pen.fromMnemonic(faucet.mnemonic, makeCosmoshubPath(0)); - const account2 = await Secp256k1Pen.fromMnemonic(faucet.mnemonic, makeCosmoshubPath(1)); + const account1 = await Secp256k1Pen.fromMnemonic(alice.mnemonic, makeCosmoshubPath(0)); + const account2 = await Secp256k1Pen.fromMnemonic(alice.mnemonic, makeCosmoshubPath(1)); const address1 = rawSecp256k1PubkeyToAddress(account1.pubkey, "cosmos"); const address2 = rawSecp256k1PubkeyToAddress(account2.pubkey, "cosmos"); @@ -1126,7 +1126,7 @@ describe("RestClient", () => { it("can upload, instantiate and execute wasm", async () => { pendingWithoutWasmd(); - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); const client = new RestClient(wasmd.endpoint); const transferAmount: readonly Coin[] = [ @@ -1200,7 +1200,7 @@ describe("RestClient", () => { describe("query", () => { it("can list upload code", async () => { pendingWithoutWasmd(); - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); const client = new RestClient(wasmd.endpoint); // check with contracts were here first to compare @@ -1221,7 +1221,7 @@ describe("RestClient", () => { expect(newInfos.length).toEqual(numExisting + 1); const lastInfo = newInfos[newInfos.length - 1]; expect(lastInfo.id).toEqual(codeId); - expect(lastInfo.creator).toEqual(faucet.address); + expect(lastInfo.creator).toEqual(alice.address0); // ensure metadata is present expect(lastInfo.source).toEqual( @@ -1240,7 +1240,7 @@ describe("RestClient", () => { it("can list contracts and get info", async () => { pendingWithoutWasmd(); - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); const client = new RestClient(wasmd.endpoint); const beneficiaryAddress = makeRandomAddress(); const transferAmount: readonly Coin[] = [ @@ -1284,7 +1284,7 @@ describe("RestClient", () => { expect(newContract).toEqual( jasmine.objectContaining({ code_id: codeId, - creator: faucet.address, + creator: alice.address0, label: "my escrow", }), ); @@ -1293,7 +1293,7 @@ describe("RestClient", () => { const myInfo = await client.getContractInfo(myAddress); assert(myInfo); expect(myInfo.code_id).toEqual(codeId); - expect(myInfo.creator).toEqual(faucet.address); + expect(myInfo.creator).toEqual(alice.address0); expect((myInfo.init_msg as any).beneficiary).toEqual(beneficiaryAddress); // make sure random addresses don't give useful info @@ -1309,7 +1309,7 @@ describe("RestClient", () => { beforeAll(async () => { if (wasmdEnabled()) { - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); const uploadResult = await uploadContract(client, pen); assert(!uploadResult.code); const uploadLogs = parseLogs(uploadResult.logs); @@ -1363,7 +1363,7 @@ describe("RestClient", () => { // we can query the verifier properly const resultDocument = await client.queryContractSmart(contractAddress!, { verifier: {} }); - expect(resultDocument).toEqual({ verifier: faucet.address }); + expect(resultDocument).toEqual({ verifier: alice.address0 }); // invalid query syntax throws an error await client.queryContractSmart(contractAddress!, { nosuchkey: {} }).then( diff --git a/packages/cosmwasm/src/signingcosmwasmclient.spec.ts b/packages/cosmwasm/src/signingcosmwasmclient.spec.ts index 753bb76e..8306e102 100644 --- a/packages/cosmwasm/src/signingcosmwasmclient.spec.ts +++ b/packages/cosmwasm/src/signingcosmwasmclient.spec.ts @@ -6,27 +6,17 @@ import { assert } from "@iov/utils"; import { PrivateCosmWasmClient } from "./cosmwasmclient"; import { RestClient } from "./restclient"; import { SigningCosmWasmClient, UploadMeta } from "./signingcosmwasmclient"; -import { getHackatom, makeRandomAddress, pendingWithoutWasmd } from "./testutils.spec"; +import { alice, getHackatom, makeRandomAddress, pendingWithoutWasmd } from "./testutils.spec"; const { toHex } = Encoding; const httpUrl = "http://localhost:1317"; -const faucet = { - mnemonic: - "economy stock theory fatal elder harbor betray wasp final emotion task crumble siren bottom lizard educate guess current outdoor pair theory focus wife stone", - pubkey: { - type: "tendermint/PubKeySecp256k1", - value: "A08EGB7ro1ORuFhjOnZcSgwYlpe0DSFjVNUIkNNQxwKQ", - }, - address: "cosmos1pkptre7fdkl6gfrzlesjjvhxhlc3r4gmmk8rs6", -}; - describe("SigningCosmWasmClient", () => { describe("makeReadOnly", () => { it("can be constructed", async () => { - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(httpUrl, faucet.address, (signBytes) => pen.sign(signBytes)); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(httpUrl, alice.address0, (signBytes) => pen.sign(signBytes)); expect(client).toBeTruthy(); }); }); @@ -34,8 +24,8 @@ describe("SigningCosmWasmClient", () => { describe("getHeight", () => { it("always uses authAccount implementation", async () => { pendingWithoutWasmd(); - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(httpUrl, faucet.address, (signBytes) => pen.sign(signBytes)); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(httpUrl, alice.address0, (signBytes) => pen.sign(signBytes)); const openedClient = (client as unknown) as PrivateCosmWasmClient; const blockLatestSpy = spyOn(openedClient.restClient, "blocksLatest").and.callThrough(); @@ -52,8 +42,8 @@ describe("SigningCosmWasmClient", () => { describe("upload", () => { it("works", async () => { pendingWithoutWasmd(); - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(httpUrl, faucet.address, (signBytes) => pen.sign(signBytes)); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(httpUrl, alice.address0, (signBytes) => pen.sign(signBytes)); const wasm = getHackatom(); const { codeId, @@ -71,8 +61,8 @@ describe("SigningCosmWasmClient", () => { it("can set builder and source", async () => { pendingWithoutWasmd(); - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(httpUrl, faucet.address, (signBytes) => pen.sign(signBytes)); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(httpUrl, alice.address0, (signBytes) => pen.sign(signBytes)); const wasm = getHackatom(); const meta: UploadMeta = { @@ -90,8 +80,8 @@ describe("SigningCosmWasmClient", () => { describe("instantiate", () => { it("works with transfer amount", async () => { pendingWithoutWasmd(); - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(httpUrl, faucet.address, (signBytes) => pen.sign(signBytes)); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(httpUrl, alice.address0, (signBytes) => pen.sign(signBytes)); const { codeId } = await client.upload(getHackatom()); const transferAmount: readonly Coin[] = [ @@ -108,7 +98,7 @@ describe("SigningCosmWasmClient", () => { const { contractAddress } = await client.instantiate( codeId, { - verifier: faucet.address, + verifier: alice.address0, beneficiary: beneficiaryAddress, }, "My cool label", @@ -123,14 +113,14 @@ describe("SigningCosmWasmClient", () => { it("can instantiate one code multiple times", async () => { pendingWithoutWasmd(); - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(httpUrl, faucet.address, (signBytes) => pen.sign(signBytes)); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(httpUrl, alice.address0, (signBytes) => pen.sign(signBytes)); const { codeId } = await client.upload(getHackatom()); const contractAddress1 = await client.instantiate( codeId, { - verifier: faucet.address, + verifier: alice.address0, beneficiary: makeRandomAddress(), }, "contract 1", @@ -138,7 +128,7 @@ describe("SigningCosmWasmClient", () => { const contractAddress2 = await client.instantiate( codeId, { - verifier: faucet.address, + verifier: alice.address0, beneficiary: makeRandomAddress(), }, "contract 2", @@ -150,8 +140,8 @@ describe("SigningCosmWasmClient", () => { describe("execute", () => { it("works", async () => { pendingWithoutWasmd(); - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(httpUrl, faucet.address, (signBytes) => pen.sign(signBytes)); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(httpUrl, alice.address0, (signBytes) => pen.sign(signBytes)); const { codeId } = await client.upload(getHackatom()); // instantiate @@ -169,7 +159,7 @@ describe("SigningCosmWasmClient", () => { const { contractAddress } = await client.instantiate( codeId, { - verifier: faucet.address, + verifier: alice.address0, beneficiary: beneficiaryAddress, }, "amazing random contract", @@ -199,8 +189,8 @@ describe("SigningCosmWasmClient", () => { describe("sendTokens", () => { it("works", async () => { pendingWithoutWasmd(); - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(httpUrl, faucet.address, (signBytes) => pen.sign(signBytes)); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(httpUrl, alice.address0, (signBytes) => pen.sign(signBytes)); // instantiate const transferAmount: readonly Coin[] = [ diff --git a/packages/cosmwasm/src/testutils.spec.ts b/packages/cosmwasm/src/testutils.spec.ts index 888f5954..86128c7b 100644 --- a/packages/cosmwasm/src/testutils.spec.ts +++ b/packages/cosmwasm/src/testutils.spec.ts @@ -39,14 +39,13 @@ export const wasmd = { chainId: "testing", }; -export const faucet = { - mnemonic: - "economy stock theory fatal elder harbor betray wasp final emotion task crumble siren bottom lizard educate guess current outdoor pair theory focus wife stone", - pubkey: { +export const alice = { + mnemonic: "enlist hip relief stomach skate base shallow young switch frequent cry park", + pubkey0: { type: "tendermint/PubKeySecp256k1", - value: "A08EGB7ro1ORuFhjOnZcSgwYlpe0DSFjVNUIkNNQxwKQ", + value: "A9cXhWb8ZpqCzkA8dQCPV29KdeRLV3rUYxrkHudLbQtS", }, - address: "cosmos1pkptre7fdkl6gfrzlesjjvhxhlc3r4gmmk8rs6", + address0: "cosmos14qemq0vw6y3gc3u3e0aty2e764u4gs5le3hada", }; /** Unused account */ @@ -56,7 +55,7 @@ export const unused = { value: "ArkCaFUJ/IH+vKBmNRCdUVl3mCAhbopk9jjW4Ko4OfRQ", }, address: "cosmos1cjsxept9rkggzxztslae9ndgpdyt2408lk850u", - accountNumber: 9, + accountNumber: 19, sequence: 0, }; diff --git a/packages/demo-staking/src/index.spec.ts b/packages/demo-staking/src/index.spec.ts index 1328918f..78af9bae 100644 --- a/packages/demo-staking/src/index.spec.ts +++ b/packages/demo-staking/src/index.spec.ts @@ -18,10 +18,9 @@ function pendingWithoutWasmd(): void { } const httpUrl = "http://localhost:1317"; -const faucet = { - mnemonic: - "economy stock theory fatal elder harbor betray wasp final emotion task crumble siren bottom lizard educate guess current outdoor pair theory focus wife stone", - address: "cosmos1pkptre7fdkl6gfrzlesjjvhxhlc3r4gmmk8rs6", +const alice = { + mnemonic: "enlist hip relief stomach skate base shallow young switch frequent cry park", + address0: "cosmos14qemq0vw6y3gc3u3e0aty2e764u4gs5le3hada", }; /** Code info staking.wasm */ @@ -32,7 +31,7 @@ const params = { name: "Bounty", symbol: "BOUNTY", decimals: 3, - validator: "cosmosvaloper1ea5cpmcj2vf5d0xwurncx7zdnmkuc6eq696h9a", + validator: "cosmosvaloper1gjvanqxc774u6ed9thj4gpn9gj5zus5u32enqn", exitTax: "0.005", // 0.5 % minWithdrawal: "700", }; @@ -41,14 +40,14 @@ describe("Staking demo", () => { it("works", async () => { pendingWithoutWasmd(); // The owner of the contract that will collect the tax - const ownerPen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); + const ownerPen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); const ownerAddress = ownerPen.address("cosmos"); const ownerClient = new SigningCosmWasmClient(httpUrl, ownerAddress, (signBytes) => ownerPen.sign(signBytes), ); // a user of the contract - const userPen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic, makeCosmoshubPath(1)); + const userPen = await Secp256k1Pen.fromMnemonic(alice.mnemonic, makeCosmoshubPath(1)); const userAddress = userPen.address("cosmos"); const userClient = new SigningCosmWasmClient( httpUrl, diff --git a/packages/sdk38/src/cosmosclient.searchtx.spec.ts b/packages/sdk38/src/cosmosclient.searchtx.spec.ts index 96fe3040..3fd04d9e 100644 --- a/packages/sdk38/src/cosmosclient.searchtx.spec.ts +++ b/packages/sdk38/src/cosmosclient.searchtx.spec.ts @@ -197,8 +197,8 @@ describe("CosmosClient.searchTx", () => { assert(sendSuccessful, "value must be set in beforeAll()"); const client = new CosmosClient(wasmd.endpoint); const result = await client.searchTx({ height: sendSuccessful.height }); - expect(result.length).toEqual(1); - expect(result[0]).toEqual( + expect(result.length).toBeGreaterThanOrEqual(1); + expect(result).toContain( jasmine.objectContaining({ height: sendSuccessful.height, hash: sendSuccessful.hash, @@ -213,8 +213,8 @@ describe("CosmosClient.searchTx", () => { assert(sendUnsuccessful, "value must be set in beforeAll()"); const client = new CosmosClient(wasmd.endpoint); const result = await client.searchTx({ height: sendUnsuccessful.height }); - expect(result.length).toEqual(1); - expect(result[0]).toEqual( + expect(result.length).toBeGreaterThanOrEqual(1); + expect(result).toContain( jasmine.objectContaining({ height: sendUnsuccessful.height, hash: sendUnsuccessful.hash, diff --git a/packages/sdk38/src/testutils.spec.ts b/packages/sdk38/src/testutils.spec.ts index 7b8f2330..e4d7ca7b 100644 --- a/packages/sdk38/src/testutils.spec.ts +++ b/packages/sdk38/src/testutils.spec.ts @@ -37,7 +37,7 @@ export const unused = { value: "ArkCaFUJ/IH+vKBmNRCdUVl3mCAhbopk9jjW4Ko4OfRQ", }, address: "cosmos1cjsxept9rkggzxztslae9ndgpdyt2408lk850u", - accountNumber: 9, + accountNumber: 19, sequence: 0, }; diff --git a/scripts/wasmd/README.md b/scripts/wasmd/README.md index 664ad900..89867154 100644 --- a/scripts/wasmd/README.md +++ b/scripts/wasmd/README.md @@ -82,7 +82,7 @@ You should get output matching the following: ## Preset accounts -1. Faucet
+1. **Faucet**
economy stock theory fatal elder harbor betray wasp final emotion task crumble siren bottom lizard educate guess current outdoor pair theory focus wife stone
Address 0: cosmos1pkptre7fdkl6gfrzlesjjvhxhlc3r4gmmk8rs6
Address 1: cosmos10dyr9899g6t0pelew4nvf4j5c3jcgv0r73qga5
@@ -93,12 +93,36 @@ You should get output matching the following: Pubkey 1: AiDosfIbBi54XJ1QjCeApumcy/FjdtF+YhywPf3DKTx7
Pubkey 2: AzQg33JZqH7vSsm09esZY5bZvmzYwE/SY78cA0iLxpD7
Pubkey 3: A3gOAlB6aiRTCPvWMQg2+ZbGYNsLd8qlvV28m8p2UhY2
- Pubkey 4: Aum2063ub/ErUnIUB36sK55LktGUStgcbSiaAnL1wadu
-2. Unused: for testing account state; this account never changes balances or nonces
+ Pubkey 4: Aum2063ub/ErUnIUB36sK55LktGUStgcbSiaAnL1wadu +2. **Alice**: Test account for the cosmwasm package that can run in parallel with faucet without sequence conflicts
+ enlist hip relief stomach skate base shallow young switch frequent cry park
+ Address 0: cosmos14qemq0vw6y3gc3u3e0aty2e764u4gs5le3hada
+ Address 1: cosmos1hhg2rlu9jscacku2wwckws7932qqqu8x3gfgw0
+ Address 2: cosmos1xv9tklw7d82sezh9haa573wufgy59vmwe6xxe5
+ Address 3: cosmos17yg9mssjenmc3jkqth6ulcwj9cxujrxxzezwta
+ Address 4: cosmos1f7j7ryulwjfe9ljplvhtcaxa6wqgula3etktce
+ Pubkey 0: A9cXhWb8ZpqCzkA8dQCPV29KdeRLV3rUYxrkHudLbQtS
+ Pubkey 1: A4XluzvcUx0ViLF0DjYW5/noArGwpltDstoUUZo+g1b0
+ Pubkey 2: A5TKr1NKc/MKRJ7+EHDD9PlzmGaPD/di/6hzZyBwxoy5
+ Pubkey 3: A/HSABDUqMB2qDy+PA7fiuuuA+hfrco2VwwiThMiTzUx
+ Pubkey 4: A7usTiqgqfxL/WKhoephDUSCHBQlLagtwI/qTmEteTRM +3. **Bob**: Test account (unused for now)
+ remain fragile remove stamp quiz bus country dress critic mammal office need
+ Address 0: cosmos1lvrwcvrqlc5ktzp2c4t22xgkx29q3y83lktgzl
+ Address 1: cosmos1vkv9sfwaak76weyamqx0flmng2vuquxqcuqukh
+ Address 2: cosmos106jwym4s9aujcmes26myzzwqsccw09sdm0v5au
+ Address 3: cosmos1c7wpeen2uv8thayf7g8q2rgpm29clj0dgrdtzw
+ Address 4: cosmos1mjxpv9ft30wer7ma7kwfxhm42l379xutplrdk6
+ Pubkey 0: A0d/GxY+UALE+miWJP0qyq4/EayG1G6tsg24v+cbD6By
+ Pubkey 1: Agqd6njsVEQD1CR+F2aqEb8hil5NXZ06mjKgetaNC12t
+ Pubkey 2: A6e9ElvKaM0DKWh1bIdK3bgB14dyEDgIXYMA0Lbs1GoQ
+ Pubkey 3: AkAK5PQaucieWMb0+tTRY01feYI+upRnoNK556eD0Ibb
+ Pubkey 4: A5HMVEAJsupdQWItbZv5Z1xZifDixQi6tjU/hJpZY1bF +4. **Unused**: for testing account state; this account never changes balances or nonces
oyster design unusual machine spread century engine gravity focus cave carry slot
ArkCaFUJ/IH+vKBmNRCdUVl3mCAhbopk9jjW4Ko4OfRQ
cosmos1cjsxept9rkggzxztslae9ndgpdyt2408lk850u -3. Guest: account for manual testing
+5. **Guest**: account for manual testing
degree tackle suggest window test behind mesh extra cover prepare oak script
Am/+YV0LaeqQPu7BDJuDHV7J8y68ptkGs10YS+9s71Nq
cosmos17d0jcz59jf68g52vq38tuuncmwwjk42u6mcxej diff --git a/scripts/wasmd/deploy_erc20.js b/scripts/wasmd/deploy_erc20.js index 8fc612a9..9cb79a2f 100755 --- a/scripts/wasmd/deploy_erc20.js +++ b/scripts/wasmd/deploy_erc20.js @@ -6,14 +6,13 @@ const { Secp256k1Pen } = require("@cosmwasm/sdk38"); const fs = require("fs"); const httpUrl = "http://localhost:1317"; -const faucet = { - mnemonic: - "economy stock theory fatal elder harbor betray wasp final emotion task crumble siren bottom lizard educate guess current outdoor pair theory focus wife stone", - address0: "cosmos1pkptre7fdkl6gfrzlesjjvhxhlc3r4gmmk8rs6", - address1: "cosmos10dyr9899g6t0pelew4nvf4j5c3jcgv0r73qga5", - address2: "cosmos1xy4yqngt0nlkdcenxymg8tenrghmek4nmqm28k", - address3: "cosmos142u9fgcjdlycfcez3lw8x6x5h7rfjlnfhpw2lx", - address4: "cosmos1hsm76p4ahyhl5yh3ve9ur49r5kemhp2r0dcjvx", +const alice = { + mnemonic: "enlist hip relief stomach skate base shallow young switch frequent cry park", + address0: "cosmos14qemq0vw6y3gc3u3e0aty2e764u4gs5le3hada", + address1: "cosmos1hhg2rlu9jscacku2wwckws7932qqqu8x3gfgw0", + address2: "cosmos1xv9tklw7d82sezh9haa573wufgy59vmwe6xxe5", + address3: "cosmos17yg9mssjenmc3jkqth6ulcwj9cxujrxxzezwta", + address4: "cosmos1f7j7ryulwjfe9ljplvhtcaxa6wqgula3etktce", }; const unused = { address: "cosmos1cjsxept9rkggzxztslae9ndgpdyt2408lk850u", @@ -24,7 +23,7 @@ const guest = { const codeMeta = { source: "https://crates.io/api/v1/crates/cw-erc20/0.4.0/download", - builder: "cosmwasm/rust-optimizer:0.8.0" + builder: "cosmwasm/rust-optimizer:0.8.0", }; const initMsgHash = { @@ -33,23 +32,23 @@ const initMsgHash = { symbol: "HASH", initial_balances: [ { - address: faucet.address0, + address: alice.address0, amount: "11", }, { - address: faucet.address1, + address: alice.address1, amount: "11", }, { - address: faucet.address2, + address: alice.address2, amount: "11", }, { - address: faucet.address3, + address: alice.address3, amount: "11", }, { - address: faucet.address4, + address: alice.address4, amount: "11", }, { @@ -68,23 +67,23 @@ const initMsgIsa = { symbol: "ISA", initial_balances: [ { - address: faucet.address0, + address: alice.address0, amount: "999999999", }, { - address: faucet.address1, + address: alice.address1, amount: "999999999", }, { - address: faucet.address2, + address: alice.address2, amount: "999999999", }, { - address: faucet.address3, + address: alice.address3, amount: "999999999", }, { - address: faucet.address4, + address: alice.address4, amount: "999999999", }, { @@ -99,23 +98,23 @@ const initMsgJade = { symbol: "JADE", initial_balances: [ { - address: faucet.address0, + address: alice.address0, amount: "189189189000000000000000000", // 189189189 JADE }, { - address: faucet.address1, + address: alice.address1, amount: "189189189000000000000000000", // 189189189 JADE }, { - address: faucet.address2, + address: alice.address2, amount: "189189189000000000000000000", // 189189189 JADE }, { - address: faucet.address3, + address: alice.address3, amount: "189189189000000000000000000", // 189189189 JADE }, { - address: faucet.address4, + address: alice.address4, amount: "189189189000000000000000000", // 189189189 JADE }, { @@ -126,8 +125,8 @@ const initMsgJade = { }; async function main() { - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(httpUrl, faucet.address0, (signBytes) => pen.sign(signBytes)); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(httpUrl, alice.address0, (signBytes) => pen.sign(signBytes)); const wasm = fs.readFileSync(__dirname + "/contracts/cw-erc20.wasm"); const uploadReceipt = await client.upload(wasm, codeMeta, "Upload ERC20 contract"); diff --git a/scripts/wasmd/deploy_nameservice.js b/scripts/wasmd/deploy_nameservice.js index d2e3c196..efe8a58d 100755 --- a/scripts/wasmd/deploy_nameservice.js +++ b/scripts/wasmd/deploy_nameservice.js @@ -6,15 +6,14 @@ const { Secp256k1Pen } = require("@cosmwasm/sdk38"); const fs = require("fs"); const httpUrl = "http://localhost:1317"; -const faucet = { - mnemonic: - "economy stock theory fatal elder harbor betray wasp final emotion task crumble siren bottom lizard educate guess current outdoor pair theory focus wife stone", - address: "cosmos1pkptre7fdkl6gfrzlesjjvhxhlc3r4gmmk8rs6", +const alice = { + mnemonic: "enlist hip relief stomach skate base shallow young switch frequent cry park", + address0: "cosmos14qemq0vw6y3gc3u3e0aty2e764u4gs5le3hada", }; const codeMeta = { source: "https://crates.io/api/v1/crates/cw-nameservice/0.4.0/download", - builder: "cosmwasm/rust-optimizer:0.8.0" + builder: "cosmwasm/rust-optimizer:0.8.0", }; const free = { @@ -23,7 +22,7 @@ const free = { }; const luxury = { - label: "Luxury", + label: "Lux,ury", initMsg: { purchase_price: { denom: "ucosm", @@ -37,8 +36,8 @@ const luxury = { }; async function main() { - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(httpUrl, faucet.address, (signBytes) => pen.sign(signBytes)); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(httpUrl, alice.address0, (signBytes) => pen.sign(signBytes)); const wasm = fs.readFileSync(__dirname + "/contracts/cw-nameservice.wasm"); const uploadReceipt = await client.upload(wasm, codeMeta, "Upload Name Service code"); diff --git a/scripts/wasmd/deploy_staking.js b/scripts/wasmd/deploy_staking.js index 56341cbc..9025b11e 100755 --- a/scripts/wasmd/deploy_staking.js +++ b/scripts/wasmd/deploy_staking.js @@ -6,10 +6,9 @@ const { Secp256k1Pen } = require("@cosmwasm/sdk38"); const fs = require("fs"); const httpUrl = "http://localhost:1317"; -const faucet = { - mnemonic: - "economy stock theory fatal elder harbor betray wasp final emotion task crumble siren bottom lizard educate guess current outdoor pair theory focus wife stone", - address: "cosmos1pkptre7fdkl6gfrzlesjjvhxhlc3r4gmmk8rs6", +const alice = { + mnemonic: "enlist hip relief stomach skate base shallow young switch frequent cry park", + address0: "cosmos14qemq0vw6y3gc3u3e0aty2e764u4gs5le3hada", }; const codeMeta = { @@ -25,15 +24,15 @@ const bounty = { name: "Bounty", symbol: "BOUNTY", decimals: 3, - validator: "cosmosvaloper1ea5cpmcj2vf5d0xwurncx7zdnmkuc6eq696h9a", + validator: "cosmosvaloper1gjvanqxc774u6ed9thj4gpn9gj5zus5u32enqn", exit_tax: "0.005", // 0.5 % min_withdrawal: "7", }, }; async function main() { - const pen = await Secp256k1Pen.fromMnemonic(faucet.mnemonic); - const client = new SigningCosmWasmClient(httpUrl, faucet.address, (signBytes) => pen.sign(signBytes)); + const pen = await Secp256k1Pen.fromMnemonic(alice.mnemonic); + const client = new SigningCosmWasmClient(httpUrl, alice.address0, (signBytes) => pen.sign(signBytes)); const wasm = fs.readFileSync(__dirname + "/contracts/staking.wasm"); const uploadReceipt = await client.upload(wasm, codeMeta, "Upload Staking code"); diff --git a/scripts/wasmd/generate_template.sh b/scripts/wasmd/generate_template.sh index fd9e8522..efe5cd67 100755 --- a/scripts/wasmd/generate_template.sh +++ b/scripts/wasmd/generate_template.sh @@ -17,6 +17,8 @@ docker run --rm \ "$REPOSITORY:$VERSION" \ ./setup.sh \ cosmos1pkptre7fdkl6gfrzlesjjvhxhlc3r4gmmk8rs6 cosmos10dyr9899g6t0pelew4nvf4j5c3jcgv0r73qga5 cosmos1xy4yqngt0nlkdcenxymg8tenrghmek4nmqm28k cosmos142u9fgcjdlycfcez3lw8x6x5h7rfjlnfhpw2lx cosmos1hsm76p4ahyhl5yh3ve9ur49r5kemhp2r0dcjvx \ + cosmos14qemq0vw6y3gc3u3e0aty2e764u4gs5le3hada cosmos1hhg2rlu9jscacku2wwckws7932qqqu8x3gfgw0 cosmos1xv9tklw7d82sezh9haa573wufgy59vmwe6xxe5 cosmos17yg9mssjenmc3jkqth6ulcwj9cxujrxxzezwta cosmos1f7j7ryulwjfe9ljplvhtcaxa6wqgula3etktce \ + cosmos1lvrwcvrqlc5ktzp2c4t22xgkx29q3y83lktgzl cosmos1vkv9sfwaak76weyamqx0flmng2vuquxqcuqukh cosmos106jwym4s9aujcmes26myzzwqsccw09sdm0v5au cosmos1c7wpeen2uv8thayf7g8q2rgpm29clj0dgrdtzw cosmos1mjxpv9ft30wer7ma7kwfxhm42l379xutplrdk6 \ cosmos1cjsxept9rkggzxztslae9ndgpdyt2408lk850u \ cosmos17d0jcz59jf68g52vq38tuuncmwwjk42u6mcxej diff --git a/scripts/wasmd/template/.wasmcli/cosmos1ea5cpmcj2vf5d0xwurncx7zdnmkuc6eql3wzfw.address b/scripts/wasmd/template/.wasmcli/cosmos1ea5cpmcj2vf5d0xwurncx7zdnmkuc6eql3wzfw.address deleted file mode 100644 index 8046d5cd..00000000 --- a/scripts/wasmd/template/.wasmcli/cosmos1ea5cpmcj2vf5d0xwurncx7zdnmkuc6eql3wzfw.address +++ /dev/null @@ -1 +0,0 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyMC0wNS0wNyAwODozODoxNi40ODAzMjU3ICswMDAwIFVUQyBtPSswLjIyNDM1NjAwMSIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6IlFMeko4Q0F6ajBmWlBnZE8ifQ.7SBxLhnzZOmyPoIr83s8TXrHIJEBM0ejlF1Kr9fx_P5rfO822P3Deg.R_CIZSVj1I-wAqLr.IvSYNTrZl-h-itJKTjXnlFD_zrONKMVcxOP4S1rjCX10B-qwPFmmihf5mWVGYtg9F5DZ7_pw1UWUojd3943dfWDyZcLm5NQ5pPGiG1pmiFvcL1bQU7xUuJTfmyaY-jt_A1A05icIDHhnoJhfMRC1lMuEq-Jhel48KpVcN7x5-tHwLkPvLGa84gdjVwpAyApFqTKqOyAKftfwWx6ykAPN_6eNZ5g0jc45gcQdF75jlepHxnS3r302s6O9E4ac4gM.WW-84SVBxe5v_8o3Zh-ozg \ No newline at end of file diff --git a/scripts/wasmd/template/.wasmcli/cosmos1gjvanqxc774u6ed9thj4gpn9gj5zus5u57dxvq.address b/scripts/wasmd/template/.wasmcli/cosmos1gjvanqxc774u6ed9thj4gpn9gj5zus5u57dxvq.address new file mode 100644 index 00000000..098474c7 --- /dev/null +++ b/scripts/wasmd/template/.wasmcli/cosmos1gjvanqxc774u6ed9thj4gpn9gj5zus5u57dxvq.address @@ -0,0 +1 @@ +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyMC0wNi0wMyAwNjowMToxNy45MTE4MzcxICswMDAwIFVUQyBtPSswLjE5ODczODEwMSIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6IktCTEQ0bExSOHNFVW1sY2cifQ.douBZnlWVpI85bOt8DqZ4y-_GodSPg4fIdqE0bchsZq2VX7ZIykmPw.iYpjf76bEr3WHyku.d6XK_xgCX5JZrr9admENAUw3xMJgWw8D3NOACIpsvIBRvVcFEBkR19zvfAQIjc4ZutGhzHNo5UXvpVzC5HKFag32U3D6h8zaUc-Fr7UjAtMutKDpGSBJtza4pyVa-zDl9l9c24j8Y7Fj214AeCHkD5oPf7qZ3rVbaw9rSnNllb7a61s5xwfqr6cb7MDiNmy9VM1CN6me3gxaqR4NyXpMDKW-ip9JsX-2vTyCzj6dtrX4QJOaWEfLaOG4l_Sq2Mo.oisTG_Xv_ZtMv7y-kgrRlw \ No newline at end of file diff --git a/scripts/wasmd/template/.wasmcli/keyhash b/scripts/wasmd/template/.wasmcli/keyhash index aedbe8b9..2aff7a5c 100755 --- a/scripts/wasmd/template/.wasmcli/keyhash +++ b/scripts/wasmd/template/.wasmcli/keyhash @@ -1 +1 @@ -$2a$10$UJ32gZBsFnrfrTrpSTDpTOU2oXeWrTrJ3z.sKb.AYSL/aFCjlfZPy \ No newline at end of file +$2a$10$eCPc31WGil1Ce5DdNognJ.HCqqlQl5OJgAUCZlg9ZEyzlF4/hAqDq \ No newline at end of file diff --git a/scripts/wasmd/template/.wasmcli/validator.info b/scripts/wasmd/template/.wasmcli/validator.info index 07149721..503b5280 100644 --- a/scripts/wasmd/template/.wasmcli/validator.info +++ b/scripts/wasmd/template/.wasmcli/validator.info @@ -1 +1 @@ -eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyMC0wNS0wNyAwODozODoxNi40NjY2MDA1ICswMDAwIFVUQyBtPSswLjIxMDYyOTQwMSIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6IkVHU3VZU2dOcXlYWDRPWTEifQ.Kbly0p7Z_07PNvdVDOs7uza9xA8kvxyR5VYpNiGWmNaG0G-b3Rr3UA.YQdmwWHZj9mwpFYa.EduAyotMKtLXF-wcCuceZTwFO-gKJvwFWeU5vj-BHkwsitav9g8o2Wg72Nl6XeHc_Mf4c2dKU9ewFtxG-az5W3A5oo7jO7h2JcR2dhPBBDdCwBHesabAZFnOwu2orQxHfpqKPRIY7-FloYm6DL08E4BL74yQxfcbG8PbgjXUruXa9AlpUvhlS_oNkrjJooGzMkndo4OxhAQn8VPHEkKo_8b0E33md-7eWxn5elKpyFBiPRY-hhUO7opTnoGyVO9FJPbQKLOFxs5-ujkljwv9SeAcpLuIEFWUcGlGIkgYnn20WE73T1p_HGTDAY0CGTJx_nH9fy6H6qmkzkmq82mZtxrb0dALtRxjuUPndV4V05CajFxP.k5d3ilCgkAgOD8pW0SRAYA \ No newline at end of file +eyJhbGciOiJQQkVTMi1IUzI1NitBMTI4S1ciLCJjcmVhdGVkIjoiMjAyMC0wNi0wMyAwNjowMToxNy44OTMxOTA1ICswMDAwIFVUQyBtPSswLjE3OTk2MDUwMSIsImVuYyI6IkEyNTZHQ00iLCJwMmMiOjgxOTIsInAycyI6Ijh0WUo2dWgtOUtYUnI2Z1cifQ.aV0sfM5fQ4sRQxB8SnbdUlb1CpHrYUAbs27lS8fpACfEuJftL-abDw.VU7R45rnsYHY0n1E.t8zl9t0XA54oi5uJcWaV_IPyzzkId-ok2tezeC_0qOpD1UyMQuoobhOs1IxlxFsqh8Y48RfmacqGn1uLmTnhnpHlvAmjvOSm11BGyhA1aP2RladboJR08wIWnj1ONyPSHTCqe66500bH3J1I1WutDsb87Axs3MgU32WLR2gAM0XrSvAVmGmBv118S-pUYUFEbSmSmYIuZ1sJNMYERire4mV0pG0mzHgkzYDDeLBjqc9C_WAFNNaFRsuykEmnhsWetmoDy8HF4JoZ_JfWYPBzLDIG5wX60pEkvgGf4zex-vsz2YVEjgR4qmW_FcopnCGAGb-4i7sKrK0MdLbeZIAE05oiBQB-zmZG1ucBkj-1u9Fisql3.Bc_EoGtxY4dNz39W6Y12Uw \ No newline at end of file diff --git a/scripts/wasmd/template/.wasmd/config/genesis.json b/scripts/wasmd/template/.wasmd/config/genesis.json index befc7440..3ab703f0 100644 --- a/scripts/wasmd/template/.wasmd/config/genesis.json +++ b/scripts/wasmd/template/.wasmd/config/genesis.json @@ -1,5 +1,5 @@ { - "genesis_time": "2020-05-07T08:38:16.2062323Z", + "genesis_time": "2020-06-03T06:01:17.4747987Z", "chain_id": "testing", "consensus_params": { "block": { @@ -19,13 +19,45 @@ }, "app_hash": "", "app_state": { + "bank": { + "send_enabled": true + }, + "mint": { + "minter": { + "inflation": "0.130000000000000000", + "annual_provisions": "0.000000000000000000" + }, + "params": { + "mint_denom": "ustake", + "inflation_rate_change": "0.130000000000000000", + "inflation_max": "0.200000000000000000", + "inflation_min": "0.070000000000000000", + "goal_bonded": "0.670000000000000000", + "blocks_per_year": "6311520" + } + }, + "staking": { + "params": { + "unbonding_time": "1814400000000000", + "max_validators": 100, + "max_entries": 7, + "historical_entries": 0, + "bond_denom": "ustake" + }, + "last_total_power": "0", + "last_validator_powers": null, + "validators": null, + "delegations": null, + "unbonding_delegations": null, + "redelegations": null, + "exported": false + }, "crisis": { "constant_fee": { "denom": "ustake", "amount": "1000" } }, - "params": null, "gov": { "starting_proposal_id": "1", "deposits": null, @@ -49,66 +81,30 @@ "veto": "0.334000000000000000" } }, - "wasm": { - "codes": null, - "contracts": null + "slashing": { + "params": { + "signed_blocks_window": "100", + "min_signed_per_window": "0.500000000000000000", + "downtime_jail_duration": "600000000000", + "slash_fraction_double_sign": "0.050000000000000000", + "slash_fraction_downtime": "0.010000000000000000" + }, + "signing_infos": {}, + "missed_blocks": {} }, + "params": null, "evidence": { "params": { "max_evidence_age": "120000000000" }, "evidence": [] }, - "upgrade": {}, - "genutil": { - "gentxs": [ - { - "type": "cosmos-sdk/StdTx", - "value": { - "msg": [ - { - "type": "cosmos-sdk/MsgCreateValidator", - "value": { - "description": { - "moniker": "testing", - "identity": "", - "website": "", - "security_contact": "", - "details": "" - }, - "commission": { - "rate": "0.100000000000000000", - "max_rate": "0.200000000000000000", - "max_change_rate": "0.010000000000000000" - }, - "min_self_delegation": "1", - "delegator_address": "cosmos1ea5cpmcj2vf5d0xwurncx7zdnmkuc6eql3wzfw", - "validator_address": "cosmosvaloper1ea5cpmcj2vf5d0xwurncx7zdnmkuc6eq696h9a", - "pubkey": "cosmosvalconspub1zcjduepqmclspfdyzvncwpthrz9je2ap3pc9hnzf335uguxaf4xv4cd246jqv3360q", - "value": { - "denom": "ustake", - "amount": "250000000" - } - } - } - ], - "fee": { - "amount": [], - "gas": "200000" - }, - "signatures": [ - { - "pub_key": { - "type": "tendermint/PubKeySecp256k1", - "value": "A6BMOgVABSbSQfCTEE0FuVk5C3hEAs7+SskyD6cvwSh2" - }, - "signature": "qpCjRu0eGSyNLlMiT+HOli7r3GN/hPQPM1KmiE0eQlowllX3EGyBo0dj5r1MFsHKL98Q16wxUnsHZbzFtT3BAw==" - } - ], - "memo": "b1917ea1ed45b406564fb5c8adb531e4314f086c@172.17.0.3:26656" - } - } - ] + "supply": { + "supply": [] + }, + "wasm": { + "codes": null, + "contracts": null }, "auth": { "params": { @@ -122,7 +118,7 @@ { "type": "cosmos-sdk/Account", "value": { - "address": "cosmos1ea5cpmcj2vf5d0xwurncx7zdnmkuc6eql3wzfw", + "address": "cosmos1gjvanqxc774u6ed9thj4gpn9gj5zus5u57dxvq", "coins": [ { "denom": "ucosm", @@ -233,6 +229,196 @@ "sequence": 0 } }, + { + "type": "cosmos-sdk/Account", + "value": { + "address": "cosmos14qemq0vw6y3gc3u3e0aty2e764u4gs5le3hada", + "coins": [ + { + "denom": "ucosm", + "amount": "1000000000" + }, + { + "denom": "ustake", + "amount": "1000000000" + } + ], + "public_key": "", + "account_number": 0, + "sequence": 0 + } + }, + { + "type": "cosmos-sdk/Account", + "value": { + "address": "cosmos1hhg2rlu9jscacku2wwckws7932qqqu8x3gfgw0", + "coins": [ + { + "denom": "ucosm", + "amount": "1000000000" + }, + { + "denom": "ustake", + "amount": "1000000000" + } + ], + "public_key": "", + "account_number": 0, + "sequence": 0 + } + }, + { + "type": "cosmos-sdk/Account", + "value": { + "address": "cosmos1xv9tklw7d82sezh9haa573wufgy59vmwe6xxe5", + "coins": [ + { + "denom": "ucosm", + "amount": "1000000000" + }, + { + "denom": "ustake", + "amount": "1000000000" + } + ], + "public_key": "", + "account_number": 0, + "sequence": 0 + } + }, + { + "type": "cosmos-sdk/Account", + "value": { + "address": "cosmos17yg9mssjenmc3jkqth6ulcwj9cxujrxxzezwta", + "coins": [ + { + "denom": "ucosm", + "amount": "1000000000" + }, + { + "denom": "ustake", + "amount": "1000000000" + } + ], + "public_key": "", + "account_number": 0, + "sequence": 0 + } + }, + { + "type": "cosmos-sdk/Account", + "value": { + "address": "cosmos1f7j7ryulwjfe9ljplvhtcaxa6wqgula3etktce", + "coins": [ + { + "denom": "ucosm", + "amount": "1000000000" + }, + { + "denom": "ustake", + "amount": "1000000000" + } + ], + "public_key": "", + "account_number": 0, + "sequence": 0 + } + }, + { + "type": "cosmos-sdk/Account", + "value": { + "address": "cosmos1lvrwcvrqlc5ktzp2c4t22xgkx29q3y83lktgzl", + "coins": [ + { + "denom": "ucosm", + "amount": "1000000000" + }, + { + "denom": "ustake", + "amount": "1000000000" + } + ], + "public_key": "", + "account_number": 0, + "sequence": 0 + } + }, + { + "type": "cosmos-sdk/Account", + "value": { + "address": "cosmos1vkv9sfwaak76weyamqx0flmng2vuquxqcuqukh", + "coins": [ + { + "denom": "ucosm", + "amount": "1000000000" + }, + { + "denom": "ustake", + "amount": "1000000000" + } + ], + "public_key": "", + "account_number": 0, + "sequence": 0 + } + }, + { + "type": "cosmos-sdk/Account", + "value": { + "address": "cosmos106jwym4s9aujcmes26myzzwqsccw09sdm0v5au", + "coins": [ + { + "denom": "ucosm", + "amount": "1000000000" + }, + { + "denom": "ustake", + "amount": "1000000000" + } + ], + "public_key": "", + "account_number": 0, + "sequence": 0 + } + }, + { + "type": "cosmos-sdk/Account", + "value": { + "address": "cosmos1c7wpeen2uv8thayf7g8q2rgpm29clj0dgrdtzw", + "coins": [ + { + "denom": "ucosm", + "amount": "1000000000" + }, + { + "denom": "ustake", + "amount": "1000000000" + } + ], + "public_key": "", + "account_number": 0, + "sequence": 0 + } + }, + { + "type": "cosmos-sdk/Account", + "value": { + "address": "cosmos1mjxpv9ft30wer7ma7kwfxhm42l379xutplrdk6", + "coins": [ + { + "denom": "ucosm", + "amount": "1000000000" + }, + { + "denom": "ustake", + "amount": "1000000000" + } + ], + "public_key": "", + "account_number": 0, + "sequence": 0 + } + }, { "type": "cosmos-sdk/Account", "value": { @@ -292,52 +478,56 @@ "delegator_starting_infos": [], "validator_slash_events": [] }, - "slashing": { - "params": { - "signed_blocks_window": "100", - "min_signed_per_window": "0.500000000000000000", - "downtime_jail_duration": "600000000000", - "slash_fraction_double_sign": "0.050000000000000000", - "slash_fraction_downtime": "0.010000000000000000" - }, - "signing_infos": {}, - "missed_blocks": {} + "genutil": { + "gentxs": [ + { + "type": "cosmos-sdk/StdTx", + "value": { + "msg": [ + { + "type": "cosmos-sdk/MsgCreateValidator", + "value": { + "description": { + "moniker": "testing", + "identity": "", + "website": "", + "security_contact": "", + "details": "" + }, + "commission": { + "rate": "0.100000000000000000", + "max_rate": "0.200000000000000000", + "max_change_rate": "0.010000000000000000" + }, + "min_self_delegation": "1", + "delegator_address": "cosmos1gjvanqxc774u6ed9thj4gpn9gj5zus5u57dxvq", + "validator_address": "cosmosvaloper1gjvanqxc774u6ed9thj4gpn9gj5zus5u32enqn", + "pubkey": "cosmosvalconspub1zcjduepqau36ht2r742jh230pxlu4wjmwcmkwpeqava80acphsu87vt5xlpqx6g7qh", + "value": { + "denom": "ustake", + "amount": "250000000" + } + } + } + ], + "fee": { + "amount": [], + "gas": "200000" + }, + "signatures": [ + { + "pub_key": { + "type": "tendermint/PubKeySecp256k1", + "value": "A3tH1WyBdpZ9pgfi7TExB39aM7VkN4boCDO9zwrVp/i9" + }, + "signature": "U6kUzK7dQ6arkAal+6N/nCpr/qW0Q8lAFckZZBoV63YFaXxHFyTPMR2i4zZkoQoRfYPvF+9gGjdiC1gpgJzgTg==" + } + ], + "memo": "e9d5fa279f541954cc7e01521bbfee577acf73d3@172.17.0.3:26656" + } + } + ] }, - "supply": { - "supply": [] - }, - "bank": { - "send_enabled": true - }, - "staking": { - "params": { - "unbonding_time": "1814400000000000", - "max_validators": 100, - "max_entries": 7, - "historical_entries": 0, - "bond_denom": "ustake" - }, - "last_total_power": "0", - "last_validator_powers": null, - "validators": null, - "delegations": null, - "unbonding_delegations": null, - "redelegations": null, - "exported": false - }, - "mint": { - "minter": { - "inflation": "0.130000000000000000", - "annual_provisions": "0.000000000000000000" - }, - "params": { - "mint_denom": "ustake", - "inflation_rate_change": "0.130000000000000000", - "inflation_max": "0.200000000000000000", - "inflation_min": "0.070000000000000000", - "goal_bonded": "0.670000000000000000", - "blocks_per_year": "6311520" - } - } + "upgrade": {} } } \ No newline at end of file diff --git a/scripts/wasmd/template/.wasmd/config/gentx/gentx-b1917ea1ed45b406564fb5c8adb531e4314f086c.json b/scripts/wasmd/template/.wasmd/config/gentx/gentx-b1917ea1ed45b406564fb5c8adb531e4314f086c.json deleted file mode 100644 index dd03d5be..00000000 --- a/scripts/wasmd/template/.wasmd/config/gentx/gentx-b1917ea1ed45b406564fb5c8adb531e4314f086c.json +++ /dev/null @@ -1 +0,0 @@ -{"type":"cosmos-sdk/StdTx","value":{"msg":[{"type":"cosmos-sdk/MsgCreateValidator","value":{"description":{"moniker":"testing","identity":"","website":"","security_contact":"","details":""},"commission":{"rate":"0.100000000000000000","max_rate":"0.200000000000000000","max_change_rate":"0.010000000000000000"},"min_self_delegation":"1","delegator_address":"cosmos1ea5cpmcj2vf5d0xwurncx7zdnmkuc6eql3wzfw","validator_address":"cosmosvaloper1ea5cpmcj2vf5d0xwurncx7zdnmkuc6eq696h9a","pubkey":"cosmosvalconspub1zcjduepqmclspfdyzvncwpthrz9je2ap3pc9hnzf335uguxaf4xv4cd246jqv3360q","value":{"denom":"ustake","amount":"250000000"}}}],"fee":{"amount":[],"gas":"200000"},"signatures":[{"pub_key":{"type":"tendermint/PubKeySecp256k1","value":"A6BMOgVABSbSQfCTEE0FuVk5C3hEAs7+SskyD6cvwSh2"},"signature":"qpCjRu0eGSyNLlMiT+HOli7r3GN/hPQPM1KmiE0eQlowllX3EGyBo0dj5r1MFsHKL98Q16wxUnsHZbzFtT3BAw=="}],"memo":"b1917ea1ed45b406564fb5c8adb531e4314f086c@172.17.0.3:26656"}} diff --git a/scripts/wasmd/template/.wasmd/config/gentx/gentx-e9d5fa279f541954cc7e01521bbfee577acf73d3.json b/scripts/wasmd/template/.wasmd/config/gentx/gentx-e9d5fa279f541954cc7e01521bbfee577acf73d3.json new file mode 100644 index 00000000..8fed5e55 --- /dev/null +++ b/scripts/wasmd/template/.wasmd/config/gentx/gentx-e9d5fa279f541954cc7e01521bbfee577acf73d3.json @@ -0,0 +1 @@ +{"type":"cosmos-sdk/StdTx","value":{"msg":[{"type":"cosmos-sdk/MsgCreateValidator","value":{"description":{"moniker":"testing","identity":"","website":"","security_contact":"","details":""},"commission":{"rate":"0.100000000000000000","max_rate":"0.200000000000000000","max_change_rate":"0.010000000000000000"},"min_self_delegation":"1","delegator_address":"cosmos1gjvanqxc774u6ed9thj4gpn9gj5zus5u57dxvq","validator_address":"cosmosvaloper1gjvanqxc774u6ed9thj4gpn9gj5zus5u32enqn","pubkey":"cosmosvalconspub1zcjduepqau36ht2r742jh230pxlu4wjmwcmkwpeqava80acphsu87vt5xlpqx6g7qh","value":{"denom":"ustake","amount":"250000000"}}}],"fee":{"amount":[],"gas":"200000"},"signatures":[{"pub_key":{"type":"tendermint/PubKeySecp256k1","value":"A3tH1WyBdpZ9pgfi7TExB39aM7VkN4boCDO9zwrVp/i9"},"signature":"U6kUzK7dQ6arkAal+6N/nCpr/qW0Q8lAFckZZBoV63YFaXxHFyTPMR2i4zZkoQoRfYPvF+9gGjdiC1gpgJzgTg=="}],"memo":"e9d5fa279f541954cc7e01521bbfee577acf73d3@172.17.0.3:26656"}} diff --git a/scripts/wasmd/template/.wasmd/config/node_key.json b/scripts/wasmd/template/.wasmd/config/node_key.json index b3e0dc46..eeacdbe0 100644 --- a/scripts/wasmd/template/.wasmd/config/node_key.json +++ b/scripts/wasmd/template/.wasmd/config/node_key.json @@ -1 +1 @@ -{"priv_key":{"type":"tendermint/PrivKeyEd25519","value":"W2C/2ngeYVSOA7CNZOMDtMbd7e24iOmST4Iucmn5gPvADvb3X/6+18V6T8MYmKZC6l1ix/+ifmJJrVrnVrfTww=="}} \ No newline at end of file +{"priv_key":{"type":"tendermint/PrivKeyEd25519","value":"rqCDCe+vPsO3BKaxhK+Awi5PyM3BHtfM2WYEdWKXHdTPQPJeLhSji59JeBhZpF2AW1QNqeD3WRiBEDFXl4svIA=="}} \ No newline at end of file diff --git a/scripts/wasmd/template/.wasmd/config/priv_validator_key.json b/scripts/wasmd/template/.wasmd/config/priv_validator_key.json index bf7e764b..0149e497 100644 --- a/scripts/wasmd/template/.wasmd/config/priv_validator_key.json +++ b/scripts/wasmd/template/.wasmd/config/priv_validator_key.json @@ -1,11 +1,11 @@ { - "address": "8BB488F76BC08121E01A5EEC7EB041FB1BC1FE31", + "address": "2125DEB20C29FEE99EF92FC5895F2911093A9888", "pub_key": { "type": "tendermint/PubKeyEd25519", - "value": "3j8ApaQTJ4cFdxiLLKuhiHBbzEmMacRw3U1MyuGqrqQ=" + "value": "7yOrrUP1VSuqLwm/yrpbdjdnByDrOnf3Abw4fzF0N8I=" }, "priv_key": { "type": "tendermint/PrivKeyEd25519", - "value": "2E+x3h2DDfQ2X1fBaTVi9LQMzkbpTxWm0gEy8ZJECJDePwClpBMnhwV3GIssq6GIcFvMSYxpxHDdTUzK4aqupA==" + "value": "5QbYu503DV7c/hHR0WYLNTTTdgM9RlBb0eIJVB8T6G/vI6utQ/VVK6ovCb/Kult2N2cHIOs6d/cBvDh/MXQ3wg==" } } \ No newline at end of file