Skip to content

E2E Tests

E2E Tests #317

Workflow file for this run

name: E2E Tests
on:
push:
branches:
- 'main'
- 'release/*'
workflow_dispatch:
pull_request_review:
types: [submitted]
jobs:
e2e-tests:
runs-on:
group: laos
labels: ubuntu-16-cores
if: ${{ github.event_name != 'pull_request_review' || github.event.review.state == 'approved' }}
steps:
- uses: actions/checkout@v3
- uses: ./.github/actions/setup
- uses: ./.github/actions/cache
with:
cache-key: build_and_push
- name: Build
run: |
cargo build --release --locked
- name: Download polkadot
run: |
chmod +x ./zombienet/download_polkadot.sh
./zombienet/download_polkadot.sh
- name: Copy zombienet binary
run: |
wget https://github.com/paritytech/zombienet/releases/download/v1.3.106/zombienet-linux-x64
chmod +x ./zombienet-linux-x64
- name: Run zombienet
run: |
export ZOMBIENET_RELAYCHAIN_COMMAND=./tmp/polkadot
export ZOMBIENET_LAOS_COMMAND=./target/release/laos
./zombienet-linux-x64 spawn ./zombienet/native.toml &
echo "Zombienet started"
- name: Wait for zombienet
run: |
timeout 36 sh -c 'until nc -z $0 $1; do echo -n .; sleep 1; done' localhost 9999
- name: Use Node.js 18
uses: actions/setup-node@v3
with:
node-version: 18
- name: Install dependencies
run: |
npm install
working-directory: ./e2e-tests
- name: Run e2e tests
run: |
npm run build && npm run test
working-directory: ./e2e-tests