Skip to content

Commit

Permalink
devops: run BiDi tests (#32493)
Browse files Browse the repository at this point in the history
  • Loading branch information
mxschmitt committed Sep 7, 2024
1 parent f3ada9c commit 718bd9b
Show file tree
Hide file tree
Showing 3 changed files with 52 additions and 5 deletions.
42 changes: 42 additions & 0 deletions .github/workflows/tests_bidi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: tests BiDi

on:
workflow_dispatch:
pull_request:
branches:
- main
paths:
- .github/workflows/tests_bidi.yml
schedule:
# Run every day at midnight
- cron: '0 0 * * *'

env:
FORCE_COLOR: 1
ELECTRON_SKIP_BINARY_DOWNLOAD: 1

jobs:
test_bidi:
name: BiDi
environment: ${{ github.event_name == 'push' && 'allow-uploading-flakiness-results' || null }}
runs-on: ubuntu-24.04
permissions:
id-token: write # This is required for OIDC login (azure/login) to succeed
contents: read # This is required for actions/checkout to succeed
strategy:
fail-fast: false
matrix:
# TODO: add Firefox
channel: [bidi-chrome-stable]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
- run: npm ci
env:
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: '1'
- run: npm run build
- run: npx playwright install --with-deps chromium
- name: Run tests
run: xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- npm run biditest -- --project=${{ matrix.channel }}*
7 changes: 6 additions & 1 deletion packages/playwright-core/src/server/registry/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -354,7 +354,7 @@ function readDescriptors(browsersJSON: BrowsersJSON) {

export type BrowserName = 'chromium' | 'firefox' | 'webkit' | 'bidi';
type InternalTool = 'ffmpeg' | 'firefox-beta' | 'chromium-tip-of-tree' | 'android';
type BidiChannel = 'bidi-firefox-stable' | 'bidi-chrome-canary';
type BidiChannel = 'bidi-firefox-stable' | 'bidi-chrome-canary' | 'bidi-chrome-stable';
type ChromiumChannel = 'chrome' | 'chrome-beta' | 'chrome-dev' | 'chrome-canary' | 'msedge' | 'msedge-beta' | 'msedge-dev' | 'msedge-canary';
const allDownloadable = ['chromium', 'firefox', 'webkit', 'ffmpeg', 'firefox-beta', 'chromium-tip-of-tree'];

Expand Down Expand Up @@ -530,6 +530,11 @@ export class Registry {
'darwin': '/Applications/Firefox.app/Contents/MacOS/firefox',
'win32': '\\Mozilla Firefox\\firefox.exe',
}));
this._executables.push(this._createBidiChannel('bidi-chrome-stable', {
'linux': '/opt/google/chrome/chrome',
'darwin': '/Applications/Google Chrome.app/Contents/MacOS/Google Chrome',
'win32': `\\Google\\Chrome\\Application\\chrome.exe`,
}));
this._executables.push(this._createBidiChannel('bidi-chrome-canary', {
'linux': '',
'darwin': '/Applications/Google Chrome Canary.app/Contents/MacOS/Google Chrome Canary',
Expand Down
8 changes: 4 additions & 4 deletions tests/bidi/playwright.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,9 @@ const config: Config<PlaywrightWorkerOptions & PlaywrightTestOptions & TestModeW
expect: {
timeout: 10000,
},
maxFailures: 200,
timeout: 30000,
globalTimeout: 5400000,
maxFailures: 0,
timeout: 15 * 1000,
globalTimeout: 30 * 60 * 1000,
workers: process.env.CI ? 2 : undefined,
fullyParallel: !process.env.CI,
forbidOnly: !!process.env.CI,
Expand All @@ -63,7 +63,7 @@ if (executablePath && !process.env.TEST_WORKER_INDEX)
console.error(`Using executable at ${executablePath}`);
const testIgnore: RegExp[] = [];
const browserToChannels = {
'_bidiChromium': ['bidi-chrome-canary'],
'_bidiChromium': ['bidi-chrome-stable'],
'_bidiFirefox': ['bidi-firefox-stable'],
};
for (const [key, channels] of Object.entries(browserToChannels)) {
Expand Down

0 comments on commit 718bd9b

Please sign in to comment.