Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

eos-evm-node repo integration test #17

Merged
merged 52 commits into from
Aug 4, 2023
Merged

Conversation

oschwaldp-oci
Copy link
Contributor

@oschwaldp-oci oschwaldp-oci commented Jul 28, 2023

Resolves: #11

Port PR for leap integration test updates and workflow. (eosnetworkfoundation/eos-evm-contract#355)
Use eos-evm repo for contract artifact.

  • Add configurable inputs for dependencies: leap, leap-dev, cdt, eos-evm-contract
  • Streamline build.tar.gz by omitting object files from uploaded artifact.
  • Fixes up nodeos_eos_evm_test.py to work with changes made when porting code over to eos-evm-node and splitting out eos-evm-rpc into separate executable.
  • CICD - Adds integration test nodeos_eos_evm_test.py
  • Fixes up eos-evm-node build, adds tests and peripherals to build dir to be included in tarball artifact of build, and copies executables into the bin directory.
  • Fixes node modules and imports in tx_wrapper/index.js

Use eos-evm repo contract artifact.
Trying to manually solve error installing leap deb package around unmet dependencies.
Set up absolute paths as workflow step outputs to be reused in test invokation.
Having tests and peripherals in the build allows simply downloading the archived build artifact and having everything necessary to run integration tests.

Update node.yaml workflow for using only the build artifact.  It no longer needs to clone the eos-evm-node repository.
…nch an eos-evm-rpc.

Also add error checking for the eos-evm-rpc logs and killing of the process at end of test.
peripherals/tx_wrapper/index.js Show resolved Hide resolved
run: |
mkdir test_run_root
cd test_run_root
${{ steps.evm-node-build.outputs.EVM_NODE_BUILD }}/tests/nodeos_eos_evm_test.py -v --eos-evm-contract-root ${{ steps.evm-contract.outputs.EVM_CONTRACT }} --eos-evm-build-root ${{ steps.evm-node-build.outputs.EVM_NODE_BUILD }} --use-tx-wrapper ${{ steps.evm-node-build.outputs.EVM_NODE_BUILD }}/peripherals/tx_wrapper
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we consider setting up ctest?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure what that would look like since this is an integration test that requires access to leap, leap-dev, cdt, eos-evm-contract which may not be available locally for ctest.

@elmato elmato self-requested a review August 2, 2023 21:46
@oschwaldp-oci oschwaldp-oci merged commit 099bca9 into main Aug 4, 2023
6 checks passed
@oschwaldp-oci oschwaldp-oci deleted the gh-11-integration-test branch August 4, 2023 00:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
OCI Work exclusive to OCI team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

eos-evm-node repo integration test
4 participants