Skip to content

chore(release): prepare @askrjs/askr 0.3.0 #172

chore(release): prepare @askrjs/askr 0.3.0

chore(release): prepare @askrjs/askr 0.3.0 #172

Workflow file for this run

name: Extended Quality
on:
pull_request:
branches: [main]
schedule:
- cron: '35 3 * * *'
workflow_dispatch:
permissions:
contents: read
jobs:
seeded-lifecycle:
name: Seeded lifecycle traces
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- name: Checkout repository
uses: actions/checkout@v7
- name: Setup Node
uses: actions/setup-node@v7
with:
node-version: 'lts/*'
cache: npm
- name: Install dependencies
run: npm ci
- name: Run replayable lifecycle sequences
env:
ASKR_QUALITY_SEEDS: 0..99
run: npm run test:jsdom -- --testNamePattern="lifecycle sequence"
- name: Upload failing seed traces
if: failure()
uses: actions/upload-artifact@v7
with:
name: quality-seed-traces
path: .askr-quality-traces/
if-no-files-found: ignore
browser:
name: ${{ matrix.browser }} on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
timeout-minutes: 20
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-latest
browser: chromium
- os: ubuntu-latest
browser: firefox
- os: macos-latest
browser: webkit
steps:
- name: Checkout repository
uses: actions/checkout@v7
- name: Setup Node
uses: actions/setup-node@v7
with:
node-version: 'lts/*'
cache: npm
- name: Install dependencies
run: npm ci
- name: Install browser with system dependencies
run: npx playwright install --with-deps ${{ matrix.browser }}
if: runner.os == 'Linux'
- name: Install browser
run: npx playwright install ${{ matrix.browser }}
if: runner.os != 'Linux'
- name: Run browser coverage
env:
ASKR_BROWSER: ${{ matrix.browser }}
run: npm run test:browser
- name: Upload browser diagnostics
if: failure()
uses: actions/upload-artifact@v7
with:
name: quality-browser-${{ matrix.os }}-${{ matrix.browser }}
path: |
test-results/
playwright-report/
if-no-files-found: ignore