aboutsummaryrefslogblamecommitdiffstats
path: root/test/web3/schema.js
blob: 61977f14094450a7f327ff7e7c6a5aa0b0bf1e07 (plain) (tree)
















































































































































































































                                                                                                                                                                                         
/* eslint no-unused-vars: 0 */

var params = {
  // diffrent params used in the methods
  param: [],
  blockHashParams: '0xb3b20624f8f0f86eb50dd04688409e5cea4bd02d700bf6e79e9384d47d6a5a35',
  filterParams: ['0xfe704947a3cd3ca12541458a4321c869'],
  transactionHashParams: [
    '0xbb3a336e3f823ec18197f1e13ee875700f08f03e2cab75f0d0b118dabb44cba0',
  ],
  blockHashAndIndexParams: [
    '0xb3b20624f8f0f86eb50dd04688409e5cea4bd02d700bf6e79e9384d47d6a5a35',
    '0x0',
  ],
  uncleByBlockNumberAndIndexParams: ['0x29c', '0x0'],
  blockParameterParams: '0x5bad55',
  data: '0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675',
  addressParams: '0xc94770007dda54cF92009BFF0dE90c06F603a09f',
  getStorageAtParams: [
    '0x295a70b2de5e3953354a6a8344e616ed314d7251',
    '0x6661e9d6d8b923d5bbaab1b96e1dd51ff6ea2a93520fdc9eb75d059238b8c5e9',
    '0x65a8db',
  ],
  getCodeParams: ['0x06012c8cf97bead5deae237070f9587f8e7a266d', '0x65a8db'],
  estimateTransaction: {
    from: '0xb60e8dd61c5d32be8058bb8eb970870f07233155',
    to: '0xd46e8dd67c5d32be8058bb8eb970870f07244567',
    gas: '0x76c0',
    gasPrice: '0x9184e72a000',
    value: '0x9184e72a',
    data: '0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675',
  },
  filterGetLogs: [{'blockHash': '0x7c5a35e9cb3e8ae0e221ab470abae9d446c3a5626ce6689fc777dcffcab52c70', 'topics': ['0x241ea03ca20251805084d27d4440371c34a0b85ff108f6bb5611248f73818b80']}],
  block: {
    __required: [],
    number: 'Q',
    hash: 'D32',
    parentHash: 'D32',
    nonce: 'D',
    sha3Uncles: 'D',
    logsBloom: 'D',
    transactionsRoot: 'D',
    stateRoot: 'D',
    receiptsRoot: 'D',
    miner: 'D',
    difficulty: 'Q',
    totalDifficulty: 'Q',
    extraData: 'D',
    size: 'Q',
    gasLimit: 'Q',
    gasUsed: 'Q',
    timestamp: 'Q',
    transactions: ['DATA|Transaction'],
    uncles: ['D'],
  },
  transaction: {
    __required: [],
    hash: 'D32',
    nonce: 'Q',
    blockHash: 'D32',
    blockNumber: 'Q',
    transactionIndex: 'Q',
    from: 'D20',
    to: 'D20',
    value: 'Q',
    gasPrice: 'Q',
    gas: 'Q',
    input: 'D',
  },
  receipt: {
    __required: [],
    transactionHash: 'D32',
    transactionIndex: 'Q',
    blockHash: 'D32',
    blockNumber: 'Q',
    cumulativeGasUsed: 'Q',
    gasUsed: 'Q',
    contractAddress: 'D20',
    logs: ['FilterChange'],
  },

  filterChange: {
    __required: [],
    removed: 'B',
    logIndex: 'Q',
    transactionIndex: 'Q',
    transactionHash: 'D32',
    blockHash: 'D32',
    blockNumber: 'Q',
    address: 'D20',
    data: 'Array|DATA',
    topics: ['D'],
  },
}

var methods = {
  hexaNumberMethods: {
    // these are the methods which have output in the form of hexa decimal numbers
    eth_blockNumber: ['eth_blockNumber', params.param, 'Q'],
    eth_gasPrice: ['eth_gasPrice', params.param, 'Q'],
    eth_newBlockFilter: ['eth_newBlockFilter', params.param, 'Q'],
    eth_newPendingTransactionFilter: [
      'eth_newPendingTransactionFilter',
      params.param,
      'Q',
    ],
    eth_getUncleCountByBlockHash: [
      'eth_getUncleCountByBlockHash',
      [params.blockHashParams],
      'Q',
      1,
    ],
    eth_getBlockTransactionCountByHash: [
      'eth_getBlockTransactionCountByHash',
      [params.blockHashParams],
      'Q',
      1,
    ],
    eth_getTransactionCount: [
      'eth_getTransactionCount',
      [params.addressParams, params.blockParameterParams],
      'Q',
      1,
      2,
    ],
    eth_getBalance: ['eth_getBalance', [params.addressParams, 'latest'], 'Q', 1, 2],
    eth_estimateGas: ['eth_estimateGas', [params.estimateTransaction], 'Q', 1],
    eth_getUncleCountByBlockNumber: [
      'eth_getUncleCountByBlockNumber',
      [params.blockParameterParams],
      'Q',
      1,
    ],
    eth_getBlockTransactionCountByNumber: [
      'eth_getBlockTransactionCountByNumber',
      ['latest'],
      'Q',
      1,
    ],
    eth_protocolVersion: ['eth_protocolVersion', params.param, 'S'],
    eth_getCode: ['eth_getCode', params.getCodeParams, 'D', 1, 2],
  },
  booleanMethods: {
    // these are the methods which have output in the form of boolean
    eth_uninstallFilter: ['eth_uninstallFilter', params.filterParams, 'B', 1],
    eth_mining: ['eth_mining', params.param, 'B'],
    eth_syncing: ['eth_syncing', params.param, 'B|EthSyncing'],
  },
  transactionMethods: {
    // these are the methods which have output in the form of transaction object
    eth_getTransactionByHash: [
      'eth_getTransactionByHash',
      params.transactionHashParams,
      params.transaction,
      1,
    ],
    eth_getTransactionByBlockHashAndIndex: [
      'eth_getTransactionByBlockHashAndIndex',
      params.blockHashAndIndexParams,
      params.transaction,
      2,
    ],
    eth_getTransactionByBlockNumberAndIndex: [
      'eth_getTransactionByBlockNumberAndIndex',
      [params.blockParameterParams, '0x0'],
      params.transaction,
      2,
    ],

  },
  blockMethods: {
    // these are the methods which have output in the form of a block

    eth_getUncleByBlockNumberAndIndex: [
      'eth_getUncleByBlockNumberAndIndex',
        params.uncleByBlockNumberAndIndexParams,
      params.block,
      2,
    ],
    eth_getBlockByHash: [
      'eth_getBlockByHash',
      [params.params, false],
      params.block,
      2,
    ],
    eth_getBlockByNumber: [
      'eth_getBlockByNumber',
      [params.blockParameterParams, false],
      params.block,
      2,
    ],
  },

  methods: {
    // these are the methods which have output in the form of bytes data

    eth_call: ['eth_call', [params.estimateTransaction, 'latest'], 'D', 1, 2],
    eth_getStorageAt: ['eth_getStorageAt', params.getStorageAtParams, 'D', 2, 2],
    eth_getTransactionReceipt: [
      'eth_getTransactionReceipt',
      params.transactionHashParams,
      params.receipt,
      1,
    ],

  },

}