Add test workflow

This commit is contained in:
Yota Toyama
2020-11-28 04:38:54 +00:00
parent a2c74df5cb
commit c9674d7a75

84
.github/workflows/test.yaml vendored Normal file
View File

@@ -0,0 +1,84 @@
name: test
on:
- push
jobs:
unit-test:
runs-on: ubuntu-latest
container:
image: einlang/ci
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
- uses: actions-rs/cargo@v1
with:
command: test
env:
RUST_MIN_STACK: 8388608
integration-test:
runs-on: ubuntu-latest
container:
image: einlang/ci
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
- uses: actions-rs/cargo@v1
with:
command: build
args: --release
- run: EIN_ROOT=$PWD PATH=$PWD/target/release:$PATH cucumber
format:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
- uses: actions-rs/cargo@v1
with:
command: fmt
args: -- --check
lint:
runs-on: ubuntu-latest
container:
image: einlang/ci
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
- uses: actions-rs/cargo@v1
with:
command: clippy
args: -- -D warnings
spell-check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: npx cspell '**/*.{feature,md,rs}'
audit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions-rs/audit-check@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
code-coverage:
runs-on: ubuntu-latest
container:
image: einlang/ci
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: nightly
override: true
- uses: actions-rs/cargo@v1
with:
command: test
args: --all-features --no-fail-fast
env:
RUST_MIN_STACK: 8388608
CARGO_INCREMENTAL: "0"
RUSTFLAGS: "-Zprofile -Ccodegen-units=1 -Cinline-threshold=0 -Clink-dead-code -Coverflow-checks=off"
- id: coverage
uses: actions-rs/grcov@v0.1
- uses: codecov/codecov-action@v1
with:
token: ${{ secrets.CODECOV_TOKEN }}
file: ${{ steps.coverage.outputs.report }}