github.com/hyperledger/burrow@v0.34.5-0.20220512172541-77f09336001d/js/src/test/abis.test.ts (about)

     1  import * as assert from 'assert';
     2  import { compile } from '../contracts/compile';
     3  import { getAddress } from '../contracts/contract';
     4  import { client } from './test';
     5  
     6  describe('Abi', function () {
     7    const source = `
     8  pragma solidity >=0.0.0;
     9  
    10  contract random {
    11  	function getRandomNumber() public pure returns (uint) {
    12  		return 55;
    13  	}
    14  }
    15    `;
    16    // TODO: understand why abi storage isn't working
    17    it('Call contract via burrow side Abi', async () => {
    18      const contract = compile(source, 'random');
    19      const instance: any = await contract.deploy(client);
    20      await client.namereg.set('random', getAddress(instance));
    21      const entry = await client.namereg.get('random');
    22      const address = entry.getData();
    23      console.log(address);
    24      const contractOut: any = await contract.at(address, client);
    25      const number = await contractOut.getRandomNumber();
    26      assert.strictEqual(number[0], 55);
    27    });
    28  });