Skip to content

Releases: b-harvest/ethrpc-checker

v1.1.0

09 Aug 08:51
Compare
Choose a tag to compare

Full Changelog: v1.0.0...v1.1.0

  • Refactored project structure

v1.0.0

19 Jul 06:51
Compare
Choose a tag to compare

Core Functionality

  • JSON-RPC Endpoint Testing: Tests all JSON-RPC endpoints using the RPC endpoint and rich account’s private key specified in the configuration file, and checks the results.
  • Result Reporting: Generates a report for each JSON-RPC call, indicating success (green), warnings (yellow), or errors (red) for easy readability.

Configuration File

  • Support for config.yaml: Configures the test using a YAML file that includes rpc_endpoint and rich_privkey settings.

Supported JSON-RPC Methods

  • eth_getBlockByHash
  • eth_getBlockReceipts
  • eth_getTransactionByBlockHashAndIndex
  • eth_getTransactionCountByHash
  • eth_getBlockTransactionCountByHash
  • eth_getTransactionReceipt
  • eth_chainId
  • eth_getTransactionCount
  • eth_maxPriorityFeePerGas
  • eth_gasPrice
  • eth_getBalance
  • eth_sendRawTransaction
  • eth_getTransactionReceipt
  • eth_chainId
  • eth_getTransactionCount
  • eth_maxPriorityFeePerGas
  • eth_gasPrice
  • eth_sendRawTransaction
  • eth_getTransactionReceipt
  • eth_chainId
  • eth_getTransactionCount
  • eth_maxPriorityFeePerGas
  • eth_gasPrice
  • eth_sendRawTransaction
  • eth_blockNumber
  • eth_getBlockByNumber
  • eth_getTransactionByHash
  • eth_getTransactionByBlockNumberAndIndex
  • eth_getCode
  • eth_getStorageAt
  • eth_newFilter
  • eth_getTransactionReceipt
  • eth_chainId
  • eth_getTransactionCount
  • eth_maxPriorityFeePerGas
  • eth_gasPrice
  • eth_sendRawTransaction
  • eth_getFilterLogs
  • eth_newBlockFilter
  • eth_getFilterChanges
  • eth_uninstallFilter
  • eth_getTransactionReceipt
  • eth_chainId
  • eth_getTransactionCount
  • eth_maxPriorityFeePerGas
  • eth_gasPrice
  • eth_sendRawTransaction
  • eth_getLogs
  • eth_estimateGas
  • eth_call

Detailed Test Result Reporting

  • Warnings and Errors: Reports warnings and errors based on the results of each test method, indicating empty fields or potential issues.
  • Readable Results in CSV and JSON: Saves test results in CSV or JSON format for easy integration with other tools.

Additional Features

  • Timeout Setting: Allows setting a timeout for each test.
  • Transaction Status Tracking: Waits for transactions to be mined and tracks their status.

Installation and Usage

1. Installation

  • go get github.com/yourusername/json-rpc-tester

2. Configuration:

  • Create a config.yaml file in the project root directory with the following settings:
rpc_endpoint: "http://localhost:8545"
rich_privkey: "YOUR_PRIVATE_KEY"

3. Execution

  • go run main.go -v -xlsx

4. Viewing Results

  • After the test completes, results will be printed to the console and saved as rpc_results_.xlsx.