fix: E2E test selectors for Tailwind v4 and strict mode #19
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| check: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: pnpm/action-setup@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: pnpm | |
| - run: pnpm install --frozen-lockfile | |
| - run: pnpm run type-check | |
| - run: pnpm run lint | |
| - run: pnpm test | |
| - run: pnpm run build | |
| e2e: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: supabase/setup-cli@v1 | |
| with: | |
| version: latest | |
| - name: Cache Supabase Docker images | |
| id: supabase-cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: /tmp/supabase-docker | |
| key: supabase-docker-${{ hashFiles('supabase/config.toml') }} | |
| - name: Load cached Docker images | |
| if: steps.supabase-cache.outputs.cache-hit == 'true' | |
| run: for f in /tmp/supabase-docker/*.tar; do docker load -i "$f"; done | |
| - name: Start Supabase (background) | |
| run: supabase start & | |
| - uses: pnpm/action-setup@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: pnpm | |
| - run: pnpm install --frozen-lockfile | |
| - name: Cache Playwright browsers | |
| id: playwright-cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.cache/ms-playwright | |
| key: playwright-${{ hashFiles('pnpm-lock.yaml') }} | |
| - name: Install Playwright chromium | |
| if: steps.playwright-cache.outputs.cache-hit != 'true' | |
| run: pnpm exec playwright install chromium --with-deps | |
| - name: Install Playwright system deps | |
| if: steps.playwright-cache.outputs.cache-hit == 'true' | |
| run: pnpm exec playwright install-deps chromium | |
| - name: Wait for Supabase | |
| run: wait && supabase status | |
| - name: Save Docker images to cache | |
| if: steps.supabase-cache.outputs.cache-hit != 'true' | |
| run: | | |
| mkdir -p /tmp/supabase-docker | |
| docker images --format '{{.Repository}}:{{.Tag}}' | grep -E 'supabase|postgrest|gotrue|realtime|storage|pgmeta|kong|logflare|pg_' | while read img; do | |
| name=$(echo "$img" | tr '/:' '_') | |
| docker save "$img" -o "/tmp/supabase-docker/${name}.tar" | |
| done | |
| - run: pnpm exec tsx tests/e2e/seed.ts | |
| - run: pnpm exec playwright test | |
| env: | |
| CI: true | |
| - uses: actions/upload-artifact@v4 | |
| if: failure() | |
| with: | |
| name: playwright-report | |
| path: playwright-report/ |