MCP Rand
by turlockmike
- .github
- workflows
name: Test Suite
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x, 20.x]
framework: [bats, pytest, jest, go, flutter]
include:
- framework: flutter
optional: true
steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- name: Install framework - bats
if: matrix.framework == 'bats'
run: sudo apt-get install -y bats
- name: Install framework - pytest
if: matrix.framework == 'pytest'
run: pip install pytest
- name: Install framework - go
if: matrix.framework == 'go'
uses: actions/setup-go@v4
with:
go-version: '1.21'
- name: Install framework - flutter
if: matrix.framework == 'flutter' && matrix.optional
uses: subosito/flutter-action@v2
- name: Install dependencies
run: npm ci
- name: Build
run: npm run build
- name: Run tests
run: npm run test:${{ matrix.framework }}
continue-on-error: ${{ matrix.optional == true }}