Skip to content

Update rstest requirement from 0.23.0 to 0.24.0 #1651

Update rstest requirement from 0.23.0 to 0.24.0

Update rstest requirement from 0.23.0 to 0.24.0 #1651

Workflow file for this run

name: Main CI
on:
push:
branches: ["*"]
pull_request:
branches: ["*"]
env:
CARGO_TERM_COLOR: always
jobs:
cargo-fmt:
name: "Format rust code"
if: ${{ vars.CI_CARGO_FMT_ENABLED == 'true' && github.ref == 'refs/heads/main' }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.head_ref }}
- name: Use nightly toolchain for formatting
run: |
rustup default nightly
rustup component add rustfmt
- name: Run cargo fmt
run: cargo fmt --all
- name: Commit & push changes
uses: EndBug/add-and-commit@v9
with:
default_author: github_actions
message: '[bot] Format Rust code'
# Disabled in the main CI
# parser-fuzz-test:
# name: Parser fuzz test (constant seed)
# if: ${{ false }}
# # if: ${{ always() && needs.cargo-coverage.result == 'success' }}
# needs: [cargo-fmt]
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v3
# - uses: Swatinem/rust-cache@v2
# with:
# shared-key: "post-cargo-build"
# - name: Python setup
# run: pip3 install fuzzingbook
# - name: Fuzzer tests
# run: utils/parser_test.py --seed 3721
cargo-coverage:
name: Tests & coverage
if: ${{ always() }}
needs: [cargo-fmt]
runs-on: ubuntu-latest
container:
image: xd009642/tarpaulin
options: --security-opt seccomp=unconfined
steps:
- name: Checkout repository
uses: actions/checkout@v2
# - name: Install iVerilog
# run: |
# apt-get update
# apt-get install -y iverilog
- name: Unpack iVerilog
run: tar xf .github/iverilog-12.0-bin.tar.xz
- name: Run tests & get coverage
env:
IVERILOG_PATH: ${{ github.workspace }}/iverilog-12.0/bin/iverilog
VVP_PATH: ${{ github.workspace }}/iverilog-12.0/bin/vvp
run: |
cargo tarpaulin --verbose --all-features --workspace --timeout 120 --out xml
- name: Upload to codecov.io
uses: codecov/codecov-action@v2
continue-on-error: true
if: ${{ github.event_name == 'pull_request' || github.ref == 'refs/heads/main' }}
with:
token: ${{secrets.CODECOV_TOKEN}}
fail_ci_if_error: true
cargo-release-test:
name: Cargo test
needs: [cargo-coverage]
if: ${{ always() && needs.cargo-coverage.result == 'success' }}
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Unpack iVerilog
run: tar xf .github/iverilog-12.0-bin.tar.xz
- name: Run tests in release mode
run: cargo test --workspace --verbose --release
env:
IVERILOG_PATH: ${{ github.workspace }}/iverilog-12.0/bin/iverilog
VVP_PATH: ${{ github.workspace }}/iverilog-12.0/bin/vvp