Files
recipe-app/.github/workflows/test.yml
T
Nils-Johan Gynther d645d3ad9d
Test Suite / test (24.15.0) (push) Has been cancelled
Test Suite / flutter-quality (push) Has been cancelled
feat: add Flutter quality checks and tests for category chips in inventory and pantry screens
2026-05-12 16:13:10 +02:00

88 lines
2.2 KiB
YAML

name: Test Suite
on:
push:
branches: [ main, develop ]
pull_request:
branches: [ main, develop ]
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [24.15.0]
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'
- name: Install dependencies (backend)
working-directory: ./backend
run: npm ci
- name: Generate Prisma Client
working-directory: ./backend
run: npm run prisma:generate
- name: Prisma schema validate
working-directory: ./backend
run: npx prisma validate --schema prisma/schema.prisma
- name: Dependency audit (high+critical)
working-directory: ./backend
run: npm audit --audit-level=high
- name: Run tests (backend)
working-directory: ./backend
run: npm test
- name: Build NestJS app
working-directory: ./backend
run: npm run build
continue-on-error: true
flutter-quality:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Detect Flutter-related changes
id: filter
uses: dorny/paths-filter@v3
with:
filters: |
flutter:
- 'flutter/**'
- '.github/workflows/test.yml'
- name: Setup Flutter
if: steps.filter.outputs.flutter == 'true'
uses: subosito/flutter-action@v2
with:
flutter-version: '3.41.9'
- name: Install dependencies (flutter)
if: steps.filter.outputs.flutter == 'true'
working-directory: ./flutter
run: flutter pub get
- name: Analyze Flutter code
if: steps.filter.outputs.flutter == 'true'
working-directory: ./flutter
run: flutter analyze
- name: Run Flutter tests
if: steps.filter.outputs.flutter == 'true'
working-directory: ./flutter
run: flutter test