collab/mermaid/cypress.config.tsblame
View source
6dd74de1import eyesPlugin from '@applitools/eyes-cypress';
6dd74de2import { registerArgosTask } from '@argos-ci/cypress/task';
6dd74de3import coverage from '@cypress/code-coverage/task.js';
6dd74de4import { defineConfig } from 'cypress';
6dd74de5import { addMatchImageSnapshotPlugin } from 'cypress-image-snapshot/plugin.js';
6dd74de6import cypressSplit from 'cypress-split';
6dd74de7import 'dotenv/config';
6dd74de8
6dd74de9export default eyesPlugin(
6dd74de10 defineConfig({
6dd74de11 projectId: 'n2sma2',
6dd74de12 viewportWidth: 1440,
6dd74de13 viewportHeight: 1024,
6dd74de14 e2e: {
6dd74de15 baseUrl: `http://localhost:${process.env.MERMAID_PORT ?? 9000}`,
6dd74de16 specPattern: 'cypress/integration/**/*.{js,ts}',
6dd74de17 setupNodeEvents(on, config) {
6dd74de18 coverage(on, config);
6dd74de19 cypressSplit(on, config);
6dd74de20 on('before:browser:launch', (browser, launchOptions) => {
6dd74de21 if (browser.name === 'chrome' && browser.isHeadless) {
6dd74de22 launchOptions.args.push('--window-size=1440,1024', '--force-device-scale-factor=1');
6dd74de23 }
6dd74de24 return launchOptions;
6dd74de25 });
6dd74de26 // copy any needed variables from process.env to config.env
6dd74de27 config.env.useAppli = process.env.USE_APPLI ? true : false;
6dd74de28 config.env.useArgos = process.env.RUN_VISUAL_TEST === 'true';
6dd74de29
6dd74de30 if (config.env.useArgos) {
6dd74de31 registerArgosTask(on, config, {
6dd74de32 // Enable upload to Argos only when it runs on CI.
6dd74de33 uploadToArgos: !!process.env.CI,
6dd74de34 });
6dd74de35 } else {
6dd74de36 addMatchImageSnapshotPlugin(on, config);
6dd74de37 }
6dd74de38 // do not forget to return the changed config object!
6dd74de39 return config;
6dd74de40 },
6dd74de41 },
6dd74de42 video: false,
6dd74de43 })
6dd74de44);