add-cms
This commit is contained in:
41
source/admin/cypress/run.mjs
Normal file
41
source/admin/cypress/run.mjs
Normal file
@@ -0,0 +1,41 @@
|
||||
import execa from 'execa';
|
||||
import { globby } from 'globby';
|
||||
|
||||
async function runCypress() {
|
||||
const args = ['run', '--browser', 'chrome', '--headless'];
|
||||
|
||||
const specs = await globby(['cypress/e2e/*spec*.js']);
|
||||
if (specs.length === 0) {
|
||||
console.log('No test files found in cypress/e2e/*spec*.js');
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
if (process.env.IS_FORK === 'true') {
|
||||
const machineIndex = parseInt(process.env.MACHINE_INDEX);
|
||||
const machineCount = parseInt(process.env.MACHINE_COUNT);
|
||||
const specsPerMachine = Math.floor(specs.length / machineCount);
|
||||
const start = (machineIndex - 1) * specsPerMachine;
|
||||
const machineSpecs =
|
||||
machineIndex === machineCount
|
||||
? specs.slice(start)
|
||||
: specs.slice(start, start + specsPerMachine);
|
||||
|
||||
args.push('--spec', machineSpecs.join(','));
|
||||
} else {
|
||||
args.push(
|
||||
'--record',
|
||||
'--parallel',
|
||||
'--ci-build-id',
|
||||
process.env.GITHUB_SHA,
|
||||
'--group',
|
||||
'GitHub CI',
|
||||
'--spec',
|
||||
specs.join(','),
|
||||
);
|
||||
}
|
||||
|
||||
console.log('Running Cypress with args:', args.join(' '));
|
||||
await execa('cypress', args, { stdio: 'inherit', preferLocal: true });
|
||||
}
|
||||
|
||||
runCypress();
|
||||
Reference in New Issue
Block a user