name: Coverage Check

on:
  push:
    branches:
      - main
  pull_request:

jobs:
  coverage-check:
    name: Coverage Check
    runs-on: ubuntu-latest
    env:
      TESTNET_PRIVATE_KEY: 98cb077f972feb0481f1d894f272c6a1e3c15e272a1658ff716444f465200070
      MAINNET_PRIVATE_KEY: 98cb077f972feb0481f1d894f272c6a1e3c15e272a1658ff716444f465200070
      TENDERLY_PRIVATE_KEY: 9b0d3fcfc049f7a4683c25abe2c85f9527c37bc0497ea2ec440b3b2e044e922f
      TENDERLY_FORK_URL: https://rpc.tenderly.co/fork/159120f7-15b5-49db-9907-c63522197ac2
      AVALANCHE_ARCHIVE_NODE_URL: ${{ secrets.AVALANCHE_ARCHIVE_NODE_URL }}
      ARBITRUM_ARCHIVE_NODE_URL: ${{ secrets.ARBITRUM_ARCHIVE_NODE_URL }}

    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-node@v3
        with:
          node-version: 16.x

      - name: Install dependencies
        run: yarn install --frozen-lockfile

      - name: Copy network config file
        run: cp .openzeppelin/avalanche.json .openzeppelin/unknown-31337.json

      - name: Run Coverage Check
        env:
          NODE_OPTIONS: "--max_old_space_size=8192"
        run: yarn coverage

      - uses: VeryGoodOpenSource/very_good_coverage@v1
        with:
          path: "./coverage/lcov.info"
          min_coverage: 0