https://github.com/eigerco/axelar-solana-e2e
https://github.com/eigerco/axelar-solana-e2e
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/eigerco/axelar-solana-e2e
- Owner: eigerco
- Created: 2025-03-13T11:40:56.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-19T12:52:56.000Z (about 1 year ago)
- Last Synced: 2025-05-19T14:02:48.128Z (about 1 year ago)
- Language: JavaScript
- Size: 162 KB
- Stars: 0
- Watchers: 2
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# axelar-solana-e2e
## Requirements
- [node.js and npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm)
- [forge (shipped with foundry)](https://book.getfoundry.sh/getting-started/installation)
## Before running the tests
Before running the tests some preconditions need to be fulfilled:
- Make sure you have the `solana-axelar` submodule set up and updated (i.e.: `git submodule update --init --recursive`)
- Run `npm install` to install the required `node` dependencies
- Run `node build/build.js -c evm` to build the evm contracts from `solana-axelar/evm-contracts` and link them under `.artifacts`
- The programs/contracts being tested should already be deployed on the chains involved in the tests, no automatically deployment is performed
- Information about the chains and the contracts are fetched from `test-contracts.json` and `devnet-amplifier.json` (these files are merged at run-time), thus, **if you deploy new contracts or use a chain that does not exist in any of these two files, make sure to update these files**
- `devnet-amplifier.json` copied from [axelar-contract-deployments repo](https://github.com/axelarnetwork/axelar-contract-deployments/blob/main/axelar-chains-config/info/devnet-amplifier.json) and that's the reason for two separate files, otherwise we would lose the info about our contracts when copying a new `devnet-amplifier.json`.
- A script to deploy the `AxelarMemo` EVM contract was added to `build/` which automatically deploys and updates the `test-contracts.json` file.
- Some environment variables need to be set (or `.env` file present), check the `dotenv.tmpl` file
- The wallets used (derived from the keys specified in the environment, see above) should be funded
## Running the tests
The project uses `mocha.js` as test harness. To run the tests, execute:
```bash
npm test
```