Skip to content

Live Preview Edit Fixes #1575

Live Preview Edit Fixes

Live Preview Edit Fixes #1575

name: Chromium-windows prod release run full tests suite
# we only do this on windows on chrome as a sanity. detailed tests will be run on pulls on staging/prod branch
on:
pull_request:
branches: [ main ]
concurrency:
group: pr-chromium-windows-prod-${{ github.event.pull_request.number }}
cancel-in-progress: true
jobs:
playwright-chromium-windows-prod:
timeout-minutes: 90
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- name: setup node
uses: actions/setup-node@v3
with:
node-version: 20
- name: Install dependencies
run: npm ci
- name: Build phoenix
run: |
npm run build
npm run release:prod
- name: Install Playwright Browsers
run: npx playwright install --with-deps
- name: Run Playwright unit tests in Chromium for prod stage
uses: nick-fields/retry@v2
id: chromiumUnit
continue-on-error: true
with:
timeout_minutes: 12
max_attempts: 3
command: npm run testChromiumDist
- name: Run Playwright integration tests in Chromium for prod stage
uses: nick-fields/retry@v2
id: chromiumIntegration
continue-on-error: true
with:
timeout_minutes: 12
max_attempts: 3
command: npx cross-env TEST_ENV=integration npm run testChromiumDist
- name: Run Playwright mainview tests in Chromium for prod stage
uses: nick-fields/retry@v2
id: chromiumMainview
continue-on-error: true
with:
timeout_minutes: 12
max_attempts: 3
command: npx cross-env TEST_ENV=mainview npm run testChromiumDist
- name: Run Playwright livepreview tests in Chromium for prod stage
uses: nick-fields/retry@v2
id: chromiumLivepreview
continue-on-error: true
with:
timeout_minutes: 15
max_attempts: 3
command: npx cross-env TEST_ENV=livepreview npm run testChromiumDist
- name: Run Playwright LegacyInteg tests in Chromium for prod stage
uses: nick-fields/retry@v2
id: chromiumLegacyInteg
continue-on-error: true
with:
timeout_minutes: 30
max_attempts: 3
command: npx cross-env TEST_ENV=LegacyInteg npm run testChromiumDist
- name: Fail on test runs failed in Chromium Windows (prod sanity)
if: steps.chromiumUnit.outcome == 'failure' || steps.chromiumIntegration.outcome == 'failure' || steps.chromiumMainview.outcome == 'failure' || steps.chromiumLivepreview.outcome == 'failure' || steps.chromiumLegacyInteg.outcome == 'failure'
shell: bash
run: |
echo "Chromium Windows (prod) Playwright tests failed, marking step as failed"
echo "Failed tests:"
if [ "${{ steps.chromiumUnit.outcome }}" == "failure" ]; then
echo "- Run Playwright unit tests in Chromium for prod stage"
fi
if [ "${{ steps.chromiumIntegration.outcome }}" == "failure" ]; then
echo "- Run Playwright integration tests in Chromium for prod stage"
fi
if [ "${{ steps.chromiumMainview.outcome }}" == "failure" ]; then
echo "- Run Playwright mainview tests in Chromium for prod stage"
fi
if [ "${{ steps.chromiumLivepreview.outcome }}" == "failure" ]; then
echo "- Run Playwright livepreview tests in Chromium for prod stage"
fi
if [ "${{ steps.chromiumLegacyInteg.outcome }}" == "failure" ]; then
echo "- Run Playwright LegacyInteg tests in Chromium for prod stage"
fi
exit 1