Skip to content

feat: initial playwright e2e test setup #1001

feat: initial playwright e2e test setup

feat: initial playwright e2e test setup #1001

Workflow file for this run

name: Checks
on:
pull_request:
types: [opened, synchronize]
env:
NEXT_PUBLIC_BALANCER_API_URL: https://api-v3.balancer.fi/graphql
NEXT_PUBLIC_WALLET_CONNECT_ID: ${{ secrets.NEXT_PUBLIC_WALLET_CONNECT_ID }}
NEXT_PRIVATE_ALCHEMY_KEY: ${{ secrets.PRIVATE_ALCHEMY_KEY }}
NEXT_PRIVATE_DRPC_KEY: ${{ secrets.PRIVATE_DRPC_KEY }}
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
TURBO_TEAM: ${{ vars.TURBO_TEAM }}
jobs:
Build:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- name: Setup
uses: ./.github/actions/setup
- name: Run build
env:
NODE_OPTIONS: "--max_old_space_size=4096"
run: pnpm run build
Lint:
runs-on: macos-14
steps:
- uses: actions/checkout@v4
- name: Setup
uses: ./.github/actions/setup
- name: Run lint
run: pnpm lint
- name: Run prettier
run: pnpm prettier
- name: Run stylelint
run: pnpm stylelint
Unit-Test:
runs-on: macos-14
steps:
- uses: actions/checkout@v4
- name: Setup
uses: ./.github/actions/setup
- name: Run typecheck
run: pnpm typecheck
- name: Run unit tests
run: pnpm test:unit
Integration-Test:
runs-on: macos-14
steps:
- uses: actions/checkout@v4
- name: Setup
uses: ./.github/actions/setup
- name: Set up foundry (includes anvil)
uses: foundry-rs/foundry-toolchain@v1
# with:
# cache: false # Disable cache after foundry-toolchain upgrade
- name: Run integration tests
run: pnpm test:integration
E2E-Test:
timeout-minutes: 60
runs-on: macos-14
steps:
- uses: actions/checkout@v4
- name: Setup
uses: ./.github/actions/setup
- name: Install Playwright Browsers
run: pnpm exec playwright install --with-deps
- name: Run Playwright tests
run: pnpm test:e2e
- uses: actions/upload-artifact@v4
if: ${{ !cancelled() }}
with:
name: playwright-report
path: playwright-report/
retention-days: 30