mirror of
https://github.com/CompassConnections/Compass.git
synced 2026-03-25 10:02:27 -04:00
69 lines
1.8 KiB
YAML
69 lines
1.8 KiB
YAML
name: E2E Tests
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
branches: [main]
|
|
|
|
jobs:
|
|
e2e:
|
|
name: E2E Tests
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 15
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: ./.github/actions/setup
|
|
|
|
- name: Cache Firebase emulators
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: ~/.cache/firebase/emulators
|
|
key: firebase-emulators-${{ hashFiles('firebase.json') }}
|
|
restore-keys: firebase-emulators-
|
|
|
|
- name: Cache Playwright browsers
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: ~/.cache/ms-playwright
|
|
key: playwright-${{ hashFiles('package.json') }}
|
|
|
|
- name: Install Java (for Firebase emulators)
|
|
uses: actions/setup-java@v4
|
|
with:
|
|
distribution: 'temurin'
|
|
java-version: '21' # Required for firebase-tools@15+
|
|
|
|
- name: Install Playwright browsers
|
|
run: npx playwright install chromium --with-deps
|
|
|
|
# Docker load from cache is actually slower than pulling the images every time with supabase start
|
|
- name: Start Supabase
|
|
run: ./scripts/supabase_start.sh
|
|
|
|
- name: Run E2E tests
|
|
env:
|
|
SKIP_DB_CLEANUP: true # Don't try to stop Docker in CI
|
|
FIREBASE_TOKEN: 'dummy' # Suppresses auth warning
|
|
# or
|
|
run: |
|
|
yarn test:e2e
|
|
|
|
- name: Upload Playwright report
|
|
if: always()
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: playwright-report
|
|
path: tests/reports/playwright-report/
|
|
retention-days: 7
|
|
|
|
- name: Upload test results
|
|
if: always()
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: test-results
|
|
path: test-results/
|
|
retention-days: 7
|
|
if-no-files-found: ignore
|