test: add test cases for handling l1 events and l1 reorg #1528
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: test | |
| on: | |
| pull_request: | |
| push: | |
| branches: [main] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| CARGO_TERM_COLOR: always | |
| jobs: | |
| unit: | |
| runs-on: | |
| group: scroll-reth-runner-group | |
| timeout-minutes: 60 | |
| env: | |
| RUST_BACKTRACE: 1 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: rui314/setup-mold@v1 | |
| - uses: dtolnay/rust-toolchain@nightly | |
| with: | |
| toolchain: 'nightly' | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| cache-on-failure: true | |
| - uses: taiki-e/install-action@nextest | |
| - name: Run unit tests | |
| run: cargo nextest run --all-features --workspace --locked -E '!kind(test)' | |
| integration: | |
| runs-on: | |
| group: scroll-reth-runner-group | |
| timeout-minutes: 60 | |
| env: | |
| RUST_BACKTRACE: 1 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: rui314/setup-mold@v1 | |
| - uses: dtolnay/rust-toolchain@nightly | |
| with: | |
| toolchain: 'nightly' | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| cache-on-failure: true | |
| - uses: taiki-e/install-action@nextest | |
| - name: Run integration tests | |
| run: | | |
| cargo nextest run --all-features --workspace --locked \ | |
| --no-tests=pass -E 'kind(test) and not test(docker) and not binary(l1_sync)' \ | |
| -- --skip test_should_consolidate_to_block_15k | |
| integration-l1-sync: | |
| runs-on: | |
| group: scroll-reth-runner-group | |
| timeout-minutes: 60 | |
| env: | |
| RUST_BACKTRACE: 1 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: rui314/setup-mold@v1 | |
| - uses: dtolnay/rust-toolchain@nightly | |
| with: | |
| toolchain: 'nightly' | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| cache-on-failure: true | |
| - uses: taiki-e/install-action@nextest | |
| - name: Run L1 sync integration tests (serial) | |
| run: | | |
| cargo nextest run --all-features --workspace --locked \ | |
| --no-tests=pass -E 'binary(l1_sync)' --test-threads=1 \ | |
| --failure-output immediate \ | |
| --success-output never | |
| integration-docker-compose: | |
| runs-on: | |
| group: scroll-reth-runner-group | |
| timeout-minutes: 90 | |
| env: | |
| RUST_BACKTRACE: 1 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: rui314/setup-mold@v1 | |
| - uses: dtolnay/rust-toolchain@stable | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| cache-on-failure: true | |
| - uses: taiki-e/install-action@nextest | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v3 | |
| - name: Free up disk space | |
| run: | | |
| echo "Initial disk usage:" | |
| df -h | |
| sudo rm -rf /usr/share/dotnet || true | |
| sudo rm -rf /opt/ghc || true | |
| sudo rm -rf /usr/local/share/boost || true | |
| sudo rm -rf "$AGENT_TOOLSDIRECTORY" || true | |
| sudo rm -rf /usr/local/lib/android || true | |
| sudo rm -rf /usr/local/share/powershell || true | |
| sudo rm -rf /usr/share/swift || true | |
| sudo rm -rf /opt/hostedtoolcache || true | |
| echo "Disk usage after cleanup:" | |
| df -h | |
| - name: Run Docker Compose integration tests | |
| run: | | |
| cargo nextest run --all-features --workspace --locked \ | |
| --no-tests=pass -E 'test(docker)' --test-threads=1 \ | |
| --failure-output immediate \ | |
| --success-output never \ | |
| --verbose | |
| env: | |
| RUST_LOG: trace | |
| RUST_BACKTRACE: full |