Skip to content

dymensionxyz/e2e-tests

Repository files navigation

E2E-Tests

Overview

This repository contains end-to-end (E2E) and Live-E2E (testing with data on Testnet) tests for Dymension and relevant repositories. These tests ensure the functionality and integration of various components within Dymension.

Prerequisites

Before running the tests, ensure you have the following installed:

Version Matrix

The version matrix below shows which versions of the E2E-Tests, Dymension, Rollapp, Relayer and libraries are compatible with each other.

E2E Tests Dymension Rollapp-EVM Rollapp-Wasm Relayer
v0.0.1 v3.1.0 v2.1.z 0.1.0-6cf8b0dd v0.3.3-v2.5.2-relayer
v1.0.1 v3.1.0-73a8a1d8 v2.2.0-rc03 0.1.0-7b60edee v0.3.3-v2.5.2-relayer
v1.1.0 v3.1.0-a74ffb0c v2.2.0 0.1.0-7b60edee v0.3.3-v2.5.2-relayer
main main main main main-dym

Tests

  1. TestDelayedAck
  2. TestEIBC
  3. TestPFM
  4. TestGenesisBridge
  5. TestERC20
  6. TestSequencer
  7. TestHubInvariants
  8. TestRollappUpgrade
  9. TestRollappHardfork

Installation

Clone the repository:

git clone https://github.com/dymensionxyz/e2e-tests.git
cd e2e-tests

Usage

Running E2E-Tests

To run the E2E tests, you can use the provided Makefile. Here are some example:

make e2e-test-ibc-success-evm

Optional:

  • If you want to keep the containers after running
export KEEP_CONTAINERS="true"
  • If you want to use a custom image for the chains
export DYMENSION_CI="ghcr.io/dymensionxyz/dymension:debug"
export ROLLAPP_WASM_CI="ghcr.io/dymensionxyz/rollapp-wasm:debug"
export ROLLAPP_EVM_CI="ghcr.io/dymensionxyz/rollapp-evm:debug"
export RELAYER_CI="ghcr.io/dymensionxyz/relayer:debug"

Running Live-Tests

To run the Live-tests, please make sure you have chain binary (ex: Hub, Rollapp, Gaia, TIA, ...) installed. Then simply execute commands defined in the Makefile.

make e2e-live-test-ibc-transfer-success

Contributing

We welcome contributions to this repository. If you would like to add more test cases or improve existing ones, please feel free to fork this repository, make your changes, and submit a pull request.