Skip to content

End to end tests

End to end tests #159

Workflow file for this run

name: End to end tests
on:
workflow_dispatch:
push:
branches:
- 'develop'
env:
NODE_VERSION: 16.x
CIRCUIT_TYPE: micro
jobs:
e2e-test:
runs-on: ubuntu-22.04
steps:
- name: Use Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v3
with:
node-version: ${{ env.NODE_VERSION }}
- name: Install g++ library dependencies
run: |
sudo apt update
sudo apt-get install cmake build-essential libgmp-dev libsodium-dev nlohmann-json3-dev nasm g++ curl
- name: Install rust toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: stable
- name: Checkout circom
uses: actions/checkout@v3
with:
repository: iden3/circom
path: circom
- name: Build circom
run: |
cd circom
cargo build --release
cargo install --path circom
- name: Checkout rapidsnark
uses: actions/checkout@v3
with:
repository: iden3/rapidsnark
path: rapidsnark
- name: Build rapidsnark
run: |
cd rapidsnark
npm install
git submodule init
git submodule update
npx task createFieldSources
npx task buildProver
- name: Checkout Clrfund
uses: actions/checkout@v3
with:
path: monorepo
- name: Download micro zk circuit params
run: |
$GITHUB_WORKSPACE/monorepo/.github/scripts/download-zkeys-${CIRCUIT_TYPE}.sh
- name: Build Clrfund
run: |
# use https to avoid error: unable to connect to github.com
git config --global url."https://".insteadOf git://
cd monorepo
yarn && yarn build
- name: Start hardhat network
run: |
cd monorepo
yarn start:node &
- name: Run tests
run: |
export CIRCUIT_DIRECTORY="$GITHUB_WORKSPACE/params"
export RAPIDSNARK_DIRECTORY="$GITHUB_WORKSPACE/rapidsnark/build"
cd monorepo
yarn test:e2e