ipld-eth-db-validator/test
2022-06-20 14:20:14 +05:30
..
contract Feature/update go geth sharding (#13) 2022-06-03 09:28:02 -04:00
helper.go Feature/update go geth sharding (#13) 2022-06-03 09:28:02 -04:00
integration_suite_test.go Add integration test and dynamic txn unit test. 2022-01-20 18:52:01 +05:30
integration_test.go Feature/update go geth sharding (#13) 2022-06-03 09:28:02 -04:00
README.md Revert changes to perform referential integrity tests (#16) 2022-06-20 14:20:14 +05:30

Test Instructions

Setup

  • For running integration tests:

    • Clone stack-orchestrator and go-ethereum repositories.

    • Checkout v4 release in go-ethereum repo.

      # In go-ethereum repo.
      git checkout v1.10.18-statediff-4.0.2-alpha
      
    • Checkout working commit in stack-orchestrator repo.

      # In stack-orchestrator repo.
      git checkout 382aca8e42bc5e33f301f77cdd2e09cc80602fc3
      

Run

  • Run unit tests:

    # In ipld-eth-db-validator root directory.
    ./scripts/run_unit_test.sh
    
  • Run integration tests:

    • In stack-orchestrator repo:

      • Create config file:

        cd helper-scripts
        
        ./create-config.sh
        

        A config.sh will be created in the root directory.

      • Update/Edit the config file config.sh:

        #!/bin/bash
        
        # Path to go-ethereum repo.
        vulcanize_go_ethereum=~/go-ethereum
        
        # Path to contract folder.
        vulcanize_test_contract=~/ipld-eth-db-validator/test/contract
        
        db_write=true
        
      • Run stack-orchestrator:

        # In stack-orchestrator root directory.
        cd helper-scripts
        
        ./wrapper.sh \
        -e docker \
        -d ../docker/latest/docker-compose-db-sharding.yml \
        -d ../docker/local/docker-compose-go-ethereum.yml \
        -d ../docker/local/docker-compose-contract.yml \
        -v remove \
        -p ../config.sh
        
    • Run tests:

      # In ipld-eth-db-validator root directory.
      ./scripts/run_integration_test.sh