devops: run BiDi tests (#32493)
This commit is contained in:
parent
f3ada9c654
commit
718bd9b35f
42
.github/workflows/tests_bidi.yml
vendored
Normal file
42
.github/workflows/tests_bidi.yml
vendored
Normal file
|
|
@ -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 }}*
|
||||
|
|
@ -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'];
|
||||
|
||||
|
|
@ -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',
|
||||
|
|
|
|||
|
|
@ -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,
|
||||
|
|
@ -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)) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue