From bb38db580b2b344ca65362f9b407a52834841a2f Mon Sep 17 00:00:00 2001 From: Jaco Greeff Date: Wed, 29 May 2019 14:38:45 +0200 Subject: [PATCH] Convert contract e2e to flipper (#960) * Convert contract e2e to flipper * Bump gas, rename contract --- packages/api/test/data/flipper-pruned.wasm | Bin 0 -> 11952 bytes packages/api/test/data/flipper.json | 1 + packages/api/test/data/incrementer-opt.wasm | Bin 9440 -> 0 bytes .../api/test/e2e/promise-contract.spec.ts | 24 ++++++++++-------- 4 files changed, 15 insertions(+), 10 deletions(-) create mode 100644 packages/api/test/data/flipper-pruned.wasm create mode 100644 packages/api/test/data/flipper.json delete mode 100644 packages/api/test/data/incrementer-opt.wasm diff --git a/packages/api/test/data/flipper-pruned.wasm b/packages/api/test/data/flipper-pruned.wasm new file mode 100644 index 0000000000000000000000000000000000000000..abbc5c5f04c7b11fa426f06426495c76ec6cf8ca GIT binary patch literal 11952 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 a{Qsdz=6@V1dWwi1FDQDLh`y|d9{xYZQE_7c diff --git a/packages/api/test/e2e/promise-contract.spec.ts b/packages/api/test/e2e/promise-contract.spec.ts index 6c424b8f65..7832a7ae79 100644 --- a/packages/api/test/e2e/promise-contract.spec.ts +++ b/packages/api/test/e2e/promise-contract.spec.ts @@ -10,8 +10,8 @@ import { KeyringPair } from '@polkadot/keyring/types'; import testingPairs from '@polkadot/keyring/testingPairs'; import Api from './../../src/promise'; -import incrementer from '../data/incrementer.json'; -import erc20 from '../data/erc20.json'; +import flipperAbi from '../data/flipper.json'; +import erc20Abi from '../data/erc20.json'; import { SubmittableResult } from './../../src'; describe.skip('Promise e2e contracts', () => { @@ -33,28 +33,31 @@ describe.skip('Promise e2e contracts', () => { done(); }); - describe('incrementer', () => { + describe('flipper', () => { + const MAX_GAS = 500000; let abi: ContractAbi; beforeEach(() => { - abi = new ContractAbi(incrementer); + abi = new ContractAbi(flipperAbi); }); it('allows putCode', (done) => { - const code = fs.readFileSync(path.join(__dirname, '../data/incrementer-opt.wasm')).toString('hex'); + const code = fs.readFileSync(path.join(__dirname, '../data/flipper-pruned.wasm')).toString('hex'); return ( api.tx.contract - .putCode(200000, `0x${code}`) + .putCode(MAX_GAS, `0x${code}`) .signAndSend(keyring.eve, (result: SubmittableResult) => { console.error('putCode', JSON.stringify(result)); + if (result.status.isFinalized) { const record = result.findRecord('contract', 'CodeStored'); if (record) { codeHash = record.event.data[0] as Hash; + + done(); } - done(); } }) ); @@ -65,9 +68,10 @@ describe.skip('Promise e2e contracts', () => { return ( api.tx.contract - .create(12345, 500000, codeHash, abi.deploy(12345)) + .create(12345, MAX_GAS, codeHash, abi.deploy()) .signAndSend(keyring.bob, (result: SubmittableResult) => { console.error('create', JSON.stringify(result)); + if (result.status.isFinalized) { const record = result.findRecord('contract', 'Instantiated'); @@ -86,7 +90,7 @@ describe.skip('Promise e2e contracts', () => { return ( api.tx.contract - .call(address, 12345, 500000, abi.messages.inc(123)) + .call(address, 12345, MAX_GAS, abi.messages.flip()) .signAndSend(keyring.bob, (result: SubmittableResult) => { console.error('call', JSON.stringify(result)); @@ -102,7 +106,7 @@ describe.skip('Promise e2e contracts', () => { let abi: ContractAbi; beforeEach(() => { - abi = abi = new ContractAbi(erc20); + abi = new ContractAbi(erc20Abi); }); it('has the attached methods', () => {