const { defineConfig } = require('cypress');
// https://docs.cypress.io/app/tooling/reporters
// https://docs.cypress.io/app/references/configuration
// https://www.npmjs.com/package/cypress-mochawesome-reporter

module.exports = defineConfig({
    e2e: {
        baseUrl: 'http://localhost:9000/',
        experimentalStudio: true,
        fixturesFolder: 'test/cypress/fixtures',
        screenshotsFolder: 'test/cypress/screenshots',
        supportFile: 'test/cypress/support/index.js',
        videosFolder: 'test/cypress/videos',
        downloadsFolder: 'test/cypress/downloads',
        video: false,
        specPattern: 'test/cypress/integration/**/*.spec.js',
        experimentalRunAllSpecs: true,
        watchForFileChanges: true,
        reporter: 'cypress-mochawesome-reporter',
        reporterOptions: {
            charts: true,
            reportPageTitle: 'Cypress Inline Reporter',
            reportFilename: '[status]_[datetime]-report',
            embeddedScreenshots: true,
            reportDir: 'test/cypress/reports',
            inlineAssets: true,
        },
        component: {
            componentFolder: 'src',
            testFiles: '**/*.spec.js',
            supportFile: 'test/cypress/support/unit.js',
        },
        setupNodeEvents(on, config) {
            require('cypress-mochawesome-reporter/plugin')(on);
            // implement node event listeners here
        },
        viewportWidth: 1280,
        viewportHeight: 720,
    },
});