diff --git a/scripts/ci-test/karmaSafariLauncher.js b/scripts/ci-test/karmaSafariLauncher.js index ce364790dc2..2b6eab101dc 100644 --- a/scripts/ci-test/karmaSafariLauncher.js +++ b/scripts/ci-test/karmaSafariLauncher.js @@ -19,7 +19,7 @@ const fs = require('fs'); const os = require('os'); const path = require('path'); -const rimraf = require("rimraf"); +const rimraf = require('rimraf'); var SafariBrowser = function (baseBrowserDecorator) { baseBrowserDecorator(this); @@ -39,14 +39,14 @@ var SafariBrowser = function (baseBrowserDecorator) { path.join(SAFARI_DATA_DIR, 'Library/Caches'), path.join(SAFARI_DATA_DIR, 'Library/Cookies'), path.join(SAFARI_DATA_DIR, 'Library/Safari'), - path.join(SAFARI_DATA_DIR, 'Library/WebKit'), - ] + path.join(SAFARI_DATA_DIR, 'Library/WebKit') + ]; - directoriesToClear.forEach((dir) => { + directoriesToClear.forEach(dir => { if (fs.existsSync(dir)) { rimraf.sync(dir); } - }) + }); } this._start = function (url) { diff --git a/scripts/ci-test/test_changed.ts b/scripts/ci-test/test_changed.ts index ed60cdc8e4a..1ea910de7d1 100644 --- a/scripts/ci-test/test_changed.ts +++ b/scripts/ci-test/test_changed.ts @@ -59,7 +59,12 @@ async function runTests(config: TestConfig) { process.exit(0); } - const lernaCmd = ['lerna', 'run', '--concurrency', '4']; + const lernaCmd = ['lerna', 'run']; + // Since the tests run in Safari are not headless, they share some global state when + // run concurrently, so we should run them serially. + if (process.env?.BROWSERS?.includes('Safari')) { + lernaCmd.push('--concurrency', '1'); + } console.log(chalk`{blue Running tests in:}`); for (const task of testTasks) { if (task.reason === TestReason.Changed) {