fix: do not include non specs when globbing using --spec in run mode (#21462)

* fix: do not include non specs when globbing using --spec in run mode

* update pattern

* fix test

* update cdp spec

* wip - updates

* update snapshots

* update non-proxied spec

* update snaps

* update snaps

* rename specs

* update spec

* wip - snapshots

* snaps

* snaps

* update spec names

* update

* update test

* snaps

* update snap and spec

* snaps

* correct spec pattern

* snaps

* revert

* update spec and snapshots

* fix test

* update tests

* fix test

* update test

* update snapshot

* update snaps

* include coffee in specPattern

* update snapshots

* update snaps

* rename specs

* snaps

* update test

* update snapshot

* update

* snaps

* update snap

* update snaps

* fix test

* unskip test

* snaps

* add test
This commit is contained in:
Lachlan Miller
2022-05-17 18:11:42 +10:00
committed by GitHub
parent 140b4ba211
commit abea165832
65 changed files with 413 additions and 255 deletions
+8 -1
View File
@@ -105,7 +105,14 @@ describe('App: Specs', () => {
})
cy.withCtx(async (ctx, options) => {
const generatedSpecPaths = (await ctx.project.findSpecs(ctx.currentProject ?? '', 'e2e', ['**/*.cy.js'], [], [])).map((spec) => spec.relative)
const generatedSpecPaths = (await ctx.project.findSpecs({
projectRoot: ctx.currentProject ?? '',
testingType: 'e2e',
specPattern: ['**/*.cy.js'],
configSpecPattern: ['**/*.cy.js'],
excludeSpecPattern: [],
additionalIgnorePattern: [],
})).map((spec) => spec.relative)
// Validate that all expected paths have been generated within the data context
expect(generatedSpecPaths.filter((path) => {
@@ -1,4 +1,4 @@
import type { CodeGenType, MutationSetProjectPreferencesArgs, NexusGenObjects, NexusGenUnions, TestingTypeEnum } from '@packages/graphql/src/gen/nxs.gen'
import type { CodeGenType, MutationSetProjectPreferencesArgs, NexusGenObjects, NexusGenUnions } from '@packages/graphql/src/gen/nxs.gen'
import type { InitializeProjectOptions, FoundBrowser, FoundSpec, LaunchOpts, OpenProjectLaunchOptions, Preferences, TestingType, ReceivedCypressOptions, AddProject, FullConfig } from '@packages/types'
import execa from 'execa'
import path from 'path'
@@ -43,12 +43,27 @@ export interface ProjectApiShape {
isListening: (url: string) => Promise<void>
}
type SetSpecsFoundBySpecPattern = {
path: string
export interface FindSpecs<T> {
projectRoot: string
testingType: Cypress.TestingType
specPattern?: Cypress.Config['specPattern']
excludeSpecPattern?: Cypress.Config['excludeSpecPattern']
additionalIgnorePattern?: string | string[]
/**
* This can be over-ridden by the --spec argument (run mode only)
* Otherwise it will be the same as `configSpecPattern`
*/
specPattern: T
/**
* The specPattern resolved from e2e.specPattern or component.specPattern
* inside of `cypress.config`.
*/
configSpecPattern: T
/**
* User can opt to exclude certain patterns in cypress.config.
*/
excludeSpecPattern: T
/**
* If in component testing mode, we exclude all specs matching the e2e.specPattern.
*/
additionalIgnorePattern: T
}
type SetForceReconfigureProjectByTestingType = {
@@ -207,7 +222,7 @@ export class ProjectActions {
}
}
async launchProject (testingType: TestingTypeEnum | null, options: LaunchOpts, specPath?: string | null) {
async launchProject (testingType: Cypress.TestingType | null, options: LaunchOpts, specPath?: string | null) {
if (!this.ctx.currentProject) {
return null
}
@@ -384,9 +399,10 @@ export class ProjectActions {
const testingType = (codeGenType === 'component') ? 'component' : 'e2e'
await this.setSpecsFoundBySpecPattern({
path: this.ctx.currentProject,
projectRoot: this.ctx.currentProject,
testingType,
specPattern: cfg.specPattern,
specPattern: cfg.specPattern ?? [],
configSpecPattern: cfg.specPattern ?? [],
excludeSpecPattern: cfg.excludeSpecPattern,
additionalIgnorePattern: cfg.additionalIgnorePattern,
})
@@ -399,9 +415,10 @@ export class ProjectActions {
}
}
async setSpecsFoundBySpecPattern ({ path, testingType, specPattern, excludeSpecPattern, additionalIgnorePattern }: SetSpecsFoundBySpecPattern) {
const toArray = (val?: string | string[]) => val ? typeof val === 'string' ? [val] : val : undefined
async setSpecsFoundBySpecPattern ({ projectRoot, testingType, specPattern, configSpecPattern, excludeSpecPattern, additionalIgnorePattern }: FindSpecs<string | string[] | undefined>) {
const toArray = (val?: string | string[]) => val ? typeof val === 'string' ? [val] : val : []
configSpecPattern = toArray(configSpecPattern)
specPattern = toArray(specPattern)
excludeSpecPattern = toArray(excludeSpecPattern) || []
@@ -409,21 +426,29 @@ export class ProjectActions {
// exclude all specs matching e2e if in component testing
additionalIgnorePattern = toArray(additionalIgnorePattern) || []
if (!specPattern) {
if (!specPattern || !configSpecPattern) {
throw Error('could not find pattern to load specs')
}
const specs = await this.ctx.project.findSpecs(
path,
const specs = await this.ctx.project.findSpecs({
projectRoot,
testingType,
specPattern,
configSpecPattern,
excludeSpecPattern,
additionalIgnorePattern,
)
})
this.ctx.actions.project.setSpecs(specs)
this.ctx.project.startSpecWatcher(path, testingType, specPattern, excludeSpecPattern, additionalIgnorePattern)
this.ctx.project.startSpecWatcher({
projectRoot,
testingType,
specPattern,
configSpecPattern,
excludeSpecPattern,
additionalIgnorePattern,
})
}
setForceReconfigureProjectByTestingType ({ forceReconfigureProject, testingType }: SetForceReconfigureProjectByTestingType) {
@@ -226,9 +226,10 @@ export class ProjectLifecycleManager {
onFinalConfigLoaded: async (finalConfig: FullConfig, options: OnFinalConfigLoadedOptions) => {
if (this._currentTestingType && finalConfig.specPattern) {
await this.ctx.actions.project.setSpecsFoundBySpecPattern({
path: this.projectRoot,
projectRoot: this.projectRoot,
testingType: this._currentTestingType,
specPattern: this.ctx.modeOptions.spec || finalConfig.specPattern,
configSpecPattern: finalConfig.specPattern,
excludeSpecPattern: finalConfig.excludeSpecPattern,
additionalIgnorePattern: finalConfig.additionalIgnorePattern,
})
@@ -2,7 +2,7 @@ import os from 'os'
import chokidar from 'chokidar'
import type { ResolvedFromConfig, RESOLVED_FROM, FoundSpec, TestingType } from '@packages/types'
import minimatch from 'minimatch'
import { debounce, isEqual } from 'lodash'
import _ from 'lodash'
import path from 'path'
import Debug from 'debug'
import commonPathPrefix from 'common-path-prefix'
@@ -18,6 +18,7 @@ import assert from 'assert'
import type { DataContext } from '..'
import { toPosix } from '../util/file'
import type { FilePartsShape } from '@packages/graphql/src/schemaTypes/objectTypes/gql-FileParts'
import type { FindSpecs } from '../actions'
export type SpecWithRelativeRoot = FoundSpec & { relativeToCommonRoot: string }
@@ -210,21 +211,45 @@ export class ProjectDataSource {
}
}
async findSpecs (
projectRoot: string,
testingType: Cypress.TestingType,
specPattern: string[],
excludeSpecPattern: string[],
globToRemove: string[],
): Promise<FoundSpec[]> {
const specAbsolutePaths = await this.ctx.file.getFilesByGlob(
async findSpecs ({
projectRoot,
testingType,
specPattern,
configSpecPattern,
excludeSpecPattern,
additionalIgnorePattern,
}: FindSpecs<string[]>): Promise<FoundSpec[]> {
let specAbsolutePaths = await this.ctx.file.getFilesByGlob(
projectRoot,
specPattern, {
absolute: true,
ignore: [...excludeSpecPattern, ...globToRemove],
ignore: [...excludeSpecPattern, ...additionalIgnorePattern],
},
)
// If the specPattern and configSpecPattern are different,
// it means the user passed something non-default via --spec (run mode only)
// in this scenario, we want to grab everything that matches `--spec`
// that falls within their default specPattern. The reason is so we avoid
// attempting to run things that are not specs, eg source code, videos, etc.
//
// Example: developer wants to run tests associated with timers in packages/driver
// So they run yarn cypress:run --spec **/timers*
// we do **not** want to capture `timers.ts` (source code) or a video in
// cypress/videos/timers.cy.ts.mp4, so we take the intersection between specPattern
// and --spec.
if (!_.isEqual(specPattern, configSpecPattern)) {
const defaultSpecAbsolutePaths = await this.ctx.file.getFilesByGlob(
projectRoot,
configSpecPattern, {
absolute: true,
ignore: [...excludeSpecPattern, ...additionalIgnorePattern],
},
)
specAbsolutePaths = _.intersection(specAbsolutePaths, defaultSpecAbsolutePaths)
}
const matched = matchedSpecs({
projectRoot,
testingType,
@@ -235,13 +260,14 @@ export class ProjectDataSource {
return matched
}
startSpecWatcher (
projectRoot: string,
testingType: Cypress.TestingType,
specPattern: string[],
excludeSpecPattern: string[],
additionalIgnore: string[],
) {
startSpecWatcher ({
projectRoot,
testingType,
specPattern,
configSpecPattern,
excludeSpecPattern,
additionalIgnorePattern,
}: FindSpecs<string[]>) {
this.stopSpecWatcher()
const currentProject = this.ctx.currentProject
@@ -253,10 +279,17 @@ export class ProjectDataSource {
// When file system changes are detected, we retrieve any spec files matching
// the determined specPattern. This function is debounced to limit execution
// during sequential file operations.
const onProjectFileSystemChange = debounce(async () => {
const specs = await this.findSpecs(projectRoot, testingType, specPattern, excludeSpecPattern, additionalIgnore)
const onProjectFileSystemChange = _.debounce(async () => {
const specs = await this.findSpecs({
projectRoot,
testingType,
specPattern,
configSpecPattern,
excludeSpecPattern,
additionalIgnorePattern,
})
if (isEqual(this.specs, specs)) {
if (_.isEqual(this.specs, specs)) {
this.ctx.actions.project.refreshSpecs(specs)
// If no differences are found, we do not need to emit events
@@ -272,7 +305,7 @@ export class ProjectDataSource {
this._specWatcher = chokidar.watch('.', {
ignoreInitial: true,
cwd: projectRoot,
ignored: ['**/node_modules/**', ...excludeSpecPattern, ...additionalIgnore],
ignored: ['**/node_modules/**', ...excludeSpecPattern, ...additionalIgnorePattern],
})
// the 'all' event includes: add, addDir, change, unlink, unlinkDir
@@ -417,9 +450,9 @@ export class ProjectDataSource {
const { specPattern } = await this.ctx.project.specPatterns()
if (this.ctx.coreData.currentTestingType === 'e2e') {
return isEqual(specPattern, [e2e])
return _.isEqual(specPattern, [e2e])
}
return isEqual(specPattern, [component])
return _.isEqual(specPattern, [component])
}
}
@@ -55,7 +55,7 @@ describe('GitDataSource', () => {
// create a file and modify a file to express all
// git states we are interested in (created, unmodified, modified)
const fooSpec = path.join(e2eFolder, 'foo.cy.js')
const aRecordSpec = path.join(e2eFolder, 'a_record.spec.js')
const aRecordSpec = path.join(e2eFolder, 'a_record.cy.js')
const xhrSpec = path.join(e2eFolder, 'xhr.cy.js')
fs.createFileSync(fooSpec)
@@ -1,17 +1,15 @@
import chai from 'chai'
import os from 'os'
import { matchedSpecs, transformSpec, SpecWithRelativeRoot, BrowserApiShape, getDefaultSpecFileName } from '../../../src/sources'
import { matchedSpecs, transformSpec, SpecWithRelativeRoot, getDefaultSpecFileName } from '../../../src/sources'
import path from 'path'
import sinon from 'sinon'
import chokidar from 'chokidar'
import _ from 'lodash'
import sinonChai from 'sinon-chai'
import { graphqlSchema } from '@packages/graphql/src/schema'
import { FoundSpec, TestingType } from '@packages/types'
import { FoundSpec } from '@packages/types'
import { DataContext } from '../../../src'
import { AppApiShape, AuthApiShape, ElectronApiShape, LocalSettingsApiShape, ProjectApiShape } from '../../../src/actions'
import { InjectedConfigApi } from '../../../src/data'
import type { FindSpecs } from '../../../src/actions'
import { createTestDataContext } from '../helper'
chai.use(sinonChai)
@@ -132,7 +130,7 @@ describe('transformSpec', () => {
})
describe('findSpecs', () => {
const temporary = path.join(os.tmpdir(), 'findSpecs')
const projectRoot = path.join(os.tmpdir(), 'findSpecs')
const fixture = [
'node_modules/test/App.spec.js',
@@ -143,49 +141,111 @@ describe('findSpecs', () => {
'e2e/onboarding.spec.ts',
'e2e/onboarding.cy.ts',
'e2e/onboarding.cy.js',
'e2e/onboarding.cy.js.mp4',
]
let ctx: DataContext
beforeEach(async () => {
ctx = createTestDataContext('run')
await ctx.fs.ensureDir(temporary)
await Promise.all(fixture.map((element) => ctx.fs.outputFile(path.join(temporary, element), '')))
await ctx.fs.ensureDir(projectRoot)
await Promise.all(fixture.map((element) => ctx.fs.outputFile(path.join(projectRoot, element), '')))
})
afterEach(async () => {
await ctx.fs.remove(temporary)
await ctx.fs.remove(projectRoot)
})
it('exludes specs outside `specPattern`, even if passing a generic glob', async () => {
const specs = await ctx.project.findSpecs({
projectRoot,
testingType: 'e2e',
specPattern: ['**/onboarding*'],
configSpecPattern: ['e2e/*.{spec,cy}.{ts,js}'],
excludeSpecPattern: [],
additionalIgnorePattern: [],
})
expect(specs).to.have.length(3)
})
it('find all the *.cy.{ts,js} excluding the e2e', async () => {
const specs = await ctx.project.findSpecs(temporary, 'component', ['**/*.cy.{ts,js}'], ['e2e/*.{spec,cy}.{ts,js}'], [])
const specs = await ctx.project.findSpecs({
projectRoot,
testingType: 'component',
specPattern: ['**/*.cy.{ts,js}'],
configSpecPattern: ['**/*.cy.{ts,js}'],
excludeSpecPattern: [],
additionalIgnorePattern: ['e2e/*.{spec,cy}.{ts,js}'],
})
expect(specs).to.have.length(2)
})
it('find all the *.{cy,spec}.{ts,js} excluding the e2e', async () => {
const specs = await ctx.project.findSpecs(temporary, 'component', ['**/*.{cy,spec}.{ts,js}'], ['e2e/*.{spec,cy}.{ts,js}'], [])
const specs = await ctx.project.findSpecs({
projectRoot,
testingType: 'component',
specPattern: ['**/*.{cy,spec}.{ts,js}'],
configSpecPattern: ['**/*.{cy,spec}.{ts,js}'],
excludeSpecPattern: [],
additionalIgnorePattern: ['e2e/*.{spec,cy}.{ts,js}'],
})
expect(specs).to.have.length(3)
})
it('find all the e2e specs', async () => {
const specs = await ctx.project.findSpecs(temporary, 'e2e', ['e2e/*.{cy,spec}.{ts,js}'], [], [])
const specs = await ctx.project.findSpecs({
projectRoot,
testingType: 'e2e',
specPattern: ['e2e/*.{cy,spec}.{ts,js}'],
configSpecPattern: ['e2e/*.{cy,spec}.{ts,js}'],
excludeSpecPattern: [],
additionalIgnorePattern: [],
})
expect(specs).to.have.length(3)
})
it('ignores node_modules if excludeSpecPattern is empty array', async () => {
const specs = await ctx.project.findSpecs(temporary, 'component', ['**/*.{cy,spec}.{ts,js}'], [], [])
const specs = await ctx.project.findSpecs({
projectRoot,
testingType: 'component',
specPattern: ['**/*.{cy,spec}.{ts,js}'],
configSpecPattern: ['**/*.{cy,spec}.{ts,js}'],
excludeSpecPattern: [],
additionalIgnorePattern: [],
})
expect(specs).to.have.length(6)
})
it('ignores e2e tests if globToRemove is set', async () => {
const specs = await ctx.project.findSpecs(temporary, 'component', ['**/*.{cy,spec}.{ts,js}'], [], ['e2e/*.{spec,cy}.{ts,js}'])
it('ignores e2e tests if additionalIgnorePattern is set', async () => {
const specs = await ctx.project.findSpecs({
projectRoot,
testingType: 'component',
specPattern: ['**/*.{cy,spec}.{ts,js}'],
configSpecPattern: ['**/*.{cy,spec}.{ts,js}'],
additionalIgnorePattern: ['e2e/*.{spec,cy}.{ts,js}'],
excludeSpecPattern: [],
})
expect(specs).to.have.length(3)
})
it('respects excludeSpecPattern', async () => {
const specs = await ctx.project.findSpecs({
projectRoot,
testingType: 'component',
specPattern: ['**/*.{cy,spec}.{ts,js}'],
configSpecPattern: ['**/*.{cy,spec}.{ts,js}'],
additionalIgnorePattern: ['e2e/*.{spec,cy}.{ts,js}'],
excludeSpecPattern: ['**/*'],
})
expect(specs).to.have.length(0)
})
})
describe('getDefaultSpecFileName', () => {
@@ -338,25 +398,14 @@ describe('getDefaultSpecFileName', () => {
})
describe('startSpecWatcher', () => {
const temporary = 'tmp'
const projectRoot = 'tmp'
let ctx: DataContext
beforeEach(async () => {
ctx = new DataContext({
schema: graphqlSchema,
mode: 'run',
modeOptions: {},
appApi: {} as AppApiShape,
localSettingsApi: {} as LocalSettingsApiShape,
authApi: {} as AuthApiShape,
configApi: {} as InjectedConfigApi,
projectApi: {} as ProjectApiShape,
electronApi: {} as ElectronApiShape,
browserApi: {} as BrowserApiShape,
})
ctx = createTestDataContext('run')
ctx.coreData.currentProject = temporary
ctx.coreData.currentProject = projectRoot
})
afterEach(async () => {
@@ -366,7 +415,16 @@ describe('startSpecWatcher', () => {
it('throws if no current project defined', () => {
ctx.coreData.currentProject = null
expect(() => ctx.project.startSpecWatcher(temporary, 'e2e', ['**/*.{cy,spec}.{ts,js}'], ['**/ignore.spec.ts'], [])).to.throw()
expect(() => {
return ctx.project.startSpecWatcher({
projectRoot,
testingType: 'e2e',
specPattern: ['**/*.{cy,spec}.{ts,js}'],
configSpecPattern: ['**/*.{cy,spec}.{ts,js}'],
excludeSpecPattern: ['**/ignore.spec.ts'],
additionalIgnorePattern: [],
})
}).to.throw()
})
it('creates file watcher based on given config properties', () => {
@@ -389,13 +447,20 @@ describe('startSpecWatcher', () => {
return handleFsChange as _.DebouncedFunc<any>
})
ctx.project.startSpecWatcher(temporary, 'e2e', ['**/*.{cy,spec}.{ts,js}'], ['**/ignore.spec.ts'], ['additional.ignore.cy.js'])
ctx.project.startSpecWatcher({
projectRoot,
testingType: 'e2e',
specPattern: ['**/*.{cy,spec}.{ts,js}'],
configSpecPattern: ['**/*.{cy,spec}.{ts,js}'],
excludeSpecPattern: ['**/ignore.spec.ts'],
additionalIgnorePattern: ['additional.ignore.cy.js'],
})
expect(_.debounce).to.have.been.calledWith(sinon.match.func, 250)
expect(chokidar.watch).to.have.been.calledWith('.', {
ignoreInitial: true,
cwd: temporary,
cwd: projectRoot,
ignored: ['**/node_modules/**', '**/ignore.spec.ts', 'additional.ignore.cy.js'],
})
@@ -429,16 +494,23 @@ describe('startSpecWatcher', () => {
return handleFsChange as _.DebouncedFunc<any>
})
const watchOptions: [string, TestingType, string[], string[], string[]] = [temporary, 'e2e', ['**/*.{cy,spec}.{ts,js}'], ['**/ignore.spec.ts'], ['additional.ignore.cy.js']]
const watchOptions: FindSpecs<string[]> = {
projectRoot,
testingType: 'e2e',
specPattern: ['**/*.{cy,spec}.{ts,js}'],
configSpecPattern: ['**/ignore.spec.ts'],
excludeSpecPattern: ['additional.ignore.cy.js'],
additionalIgnorePattern: [],
}
ctx.project.startSpecWatcher(...watchOptions)
ctx.project.startSpecWatcher(watchOptions)
// Set internal specs state to the stubbed found value to simulate irrelevant FS changes
ctx.project.setSpecs(mockFoundSpecs)
await handleFsChange()
expect(ctx.project.findSpecs).to.have.been.calledWith(...watchOptions)
expect(ctx.project.findSpecs).to.have.been.calledWith(watchOptions)
expect(ctx.actions.project.setSpecs).not.to.have.been.called
// Update internal specs state so that a change will be detected on next FS event
@@ -448,7 +520,7 @@ describe('startSpecWatcher', () => {
await handleFsChange()
expect(ctx.project.findSpecs).to.have.been.calledWith(...watchOptions)
expect(ctx.project.findSpecs).to.have.been.calledWith(watchOptions)
expect(ctx.actions.project.setSpecs).to.have.been.calledWith(mockFoundSpecs)
})
})
+8 -1
View File
@@ -95,7 +95,14 @@ module.exports = {
// in this case, we want to remove anything that matches
// - the component.specPattern
// - the e2e.excludeSpecPattern
return ctx.project.findSpecs(config.projectRoot, 'e2e', e2ePatterns.specPattern, e2ePatterns.excludeSpecPattern, componentPatterns.specPattern)
return ctx.project.findSpecs({
projectRoot: config.projectRoot,
testingType: 'e2e',
specPattern: e2ePatterns.specPattern,
configSpecPattern: e2ePatterns.specPattern,
excludeSpecPattern: e2ePatterns.excludeSpecPattern,
additionalIgnorePattern: componentPatterns.specPattern,
})
.then((specs) => {
debug('found __all specs %o', specs)
@@ -393,9 +393,10 @@ describe('lib/cypress', () => {
})
it('runs project by specific spec with default configuration', function () {
return cypress.start([`--run-project=${this.idsPath}`, `--spec=${this.idsPath}/cypress/e2e/bar.js`, '--config', 'port=2020'])
return cypress.start([`--run-project=${this.idsPath}`, `--spec=${this.idsPath}/**/*qux*`, '--config', 'port=2020'])
.then(() => {
expect(browsers.open).to.be.calledWithMatch(ELECTRON_BROWSER, { url: 'http://localhost:2020/__/#/specs/runner?file=cypress/e2e/bar.js' })
expect(browsers.open).to.be.calledWithMatch(ELECTRON_BROWSER, { url: 'http://localhost:2020/__/#/specs/runner?file=cypress/e2e/qux.cy.js' })
expect(browsers.open).to.be.calledOnce
this.expectExitWith(0)
})
})
+3 -3
View File
@@ -7,14 +7,14 @@ exports['e2e cdp / handles disconnections as expected'] = `
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (spec.ts)
│ Searched: cypress/e2e/spec.ts
│ Specs: 1 found (spec.cy.ts) │
│ Searched: cypress/e2e/spec.cy.ts
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: spec.ts (1 of 1)
Running: spec.cy.ts (1 of 1)
e2e remote debugging disconnect
+6 -6
View File
@@ -312,14 +312,14 @@ exports['e2e config setupNodeEvents modify specPattern for current testing type
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (a_record-spec.js) │
│ Searched: cypress/e2e/*-spec.js
│ Specs: 1 found (a_record.cy.js)
│ Searched: cypress/e2e/a_record.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: a_record-spec.js (1 of 1)
Running: a_record.cy.js (1 of 1)
a spec
@@ -340,14 +340,14 @@ exports['e2e config setupNodeEvents modify specPattern for current testing type
│ Screenshots: 0 │
│ Video: true │
│ Duration: X seconds │
│ Spec Ran: a_record-spec.js │
│ Spec Ran: a_record.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
(Video)
- Started processing: Compressing to 32 CRF
- Finished processing: /XXX/XXX/XXX/cypress/videos/a_record-spec.js.mp4 (X second)
- Finished processing: /XXX/XXX/XXX/cypress/videos/a_record.cy.js.mp4 (X second)
====================================================================================================
@@ -357,7 +357,7 @@ exports['e2e config setupNodeEvents modify specPattern for current testing type
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✔ a_record-spec.js XX:XX 1 1 - - - │
│ ✔ a_record.cy.js XX:XX 1 1 - - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✔ All specs passed! XX:XX 1 1 - - -
@@ -7,18 +7,18 @@ exports['e2e plugins fails when spec does not exist 1'] = `
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (spec.js)
│ Searched: cypress/e2e/spec.js
│ Specs: 1 found (spec.cy.js) │
│ Searched: cypress/e2e/spec.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: spec.js (1 of 1)
Running: spec.cy.js (1 of 1)
Oops...we found an error preparing this test file:
> cypress/e2e/spec.js
> cypress/e2e/spec.cy.js
The error was:
@@ -42,14 +42,14 @@ Fix the error in your code and re-run your tests.
│ Screenshots: 0 │
│ Video: true │
│ Duration: X seconds │
│ Spec Ran: spec.js
│ Spec Ran: spec.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
(Video)
- Started processing: Compressing to 32 CRF
- Finished processing: /XXX/XXX/XXX/cypress/videos/spec.js.mp4 (X second)
- Finished processing: /XXX/XXX/XXX/cypress/videos/spec.cy.js.mp4 (X second)
====================================================================================================
@@ -59,7 +59,7 @@ Fix the error in your code and re-run your tests.
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✖ spec.js XX:XX - - 1 - - │
│ ✖ spec.cy.js XX:XX - - 1 - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✖ 1 of 1 failed (100%) XX:XX - - 1 - -
+13 -12
View File
@@ -7,14 +7,14 @@ exports['e2e cookies with baseurl'] = `
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (cookies_spec_baseurl.js)
│ Searched: cypress/e2e/cookies_spec_baseurl.js
│ Specs: 1 found (cookies_spec_baseurl.cy.js) │
│ Searched: cypress/e2e/cookies_spec_baseurl.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: cookies_spec_baseurl.js (1 of 1)
Running: cookies_spec_baseurl.cy.js (1 of 1)
cookies
@@ -78,14 +78,14 @@ exports['e2e cookies with baseurl'] = `
│ Screenshots: 0 │
│ Video: true │
│ Duration: X seconds │
│ Spec Ran: cookies_spec_baseurl.js
│ Spec Ran: cookies_spec_baseurl.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
(Video)
- Started processing: Compressing to 32 CRF
- Finished processing: /XXX/XXX/XXX/cypress/videos/cookies_spec_baseurl.js.mp4 (X second)
- Finished processing: /XXX/XXX/XXX/cypress/videos/cookies_spec_baseurl.cy.js.mp4 (X second)
====================================================================================================
@@ -95,7 +95,7 @@ exports['e2e cookies with baseurl'] = `
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✔ cookies_spec_baseurl.js XX:XX 32 32 - - - │
│ ✔ cookies_spec_baseurl.cy.js XX:XX 32 32 - - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✔ All specs passed! XX:XX 32 32 - - -
@@ -111,14 +111,14 @@ exports['e2e cookies with no baseurl'] = `
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (cookies_spec_no_baseurl.js)
│ Searched: cypress/e2e/cookies_spec_no_baseurl.js
│ Specs: 1 found (cookies_spec_no_baseurl.cy.js) │
│ Searched: cypress/e2e/cookies_spec_no_baseurl.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: cookies_spec_no_baseurl.js (1 of 1)
Running: cookies_spec_no_baseurl.cy.js (1 of 1)
cookies
@@ -149,14 +149,15 @@ exports['e2e cookies with no baseurl'] = `
│ Screenshots: 0 │
│ Video: true │
│ Duration: X seconds │
│ Spec Ran: cookies_spec_no_baseurl.js
│ Spec Ran: cookies_spec_no_baseurl.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
(Video)
- Started processing: Compressing to 32 CRF
- Finished processing: /XXX/XXX/XXX/cypress/videos/cookies_spec_no_baseurl.js.mp4 (X second)
- Finished processing: /XXX/XXX/XXX/cypress/videos/cookies_spec_no_baseurl.cy.js.m (X second)
p4
====================================================================================================
@@ -166,7 +167,7 @@ exports['e2e cookies with no baseurl'] = `
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✔ cookies_spec_no_baseurl.js XX:XX 9 9 - - - │
│ ✔ cookies_spec_no_baseurl.cy.js XX:XX 9 9 - - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✔ All specs passed! XX:XX 9 9 - - -
@@ -7,14 +7,14 @@ exports['e2e non-proxied spec / passes'] = `
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (spec.js)
│ Searched: cypress/e2e/spec.js
│ Specs: 1 found (spec.cy.js) │
│ Searched: cypress/e2e/spec.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: spec.js (1 of 1)
Running: spec.cy.js (1 of 1)
non proxied e2e
@@ -37,7 +37,7 @@ exports['e2e non-proxied spec / passes'] = `
│ Screenshots: 0 │
│ Video: false │
│ Duration: X seconds │
│ Spec Ran: spec.js
│ Spec Ran: spec.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -48,7 +48,7 @@ exports['e2e non-proxied spec / passes'] = `
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✔ spec.js XX:XX 3 3 - - - │
│ ✔ spec.cy.js XX:XX 3 3 - - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✔ All specs passed! XX:XX 3 3 - - -
@@ -7,17 +7,17 @@ exports['e2e plugin run events / sends events'] = `
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 2 found (run_events_spec_1.js, run_events_spec_2.js)
│ Specs: 2 found (run_events_spec_1.cy.js, run_events_spec_2.cy.js) │
│ Searched: cypress/e2e/* │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
before:run: cypress/e2e/run_events_spec_1.js electron
before:run: cypress/e2e/run_events_spec_1.cy.js electron
before:run is awaited
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: run_events_spec_1.js (1 of 2)
before:spec: cypress/e2e/run_events_spec_1.js
Running: run_events_spec_1.cy.js (1 of 2)
before:spec: cypress/e2e/run_events_spec_1.cy.js
before:spec is awaited
@@ -25,7 +25,7 @@ before:spec is awaited
1 passing
spec:end: cypress/e2e/run_events_spec_1.js { tests: 1, passes: 1, failures: 0 }
spec:end: cypress/e2e/run_events_spec_1.cy.js { tests: 1, passes: 1, failures: 0 }
after:spec is awaited
(Results)
@@ -39,14 +39,14 @@ after:spec is awaited
│ Screenshots: 0 │
│ Video: false │
│ Duration: X seconds │
│ Spec Ran: run_events_spec_1.js
│ Spec Ran: run_events_spec_1.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: run_events_spec_2.js (2 of 2)
before:spec: cypress/e2e/run_events_spec_2.js
Running: run_events_spec_2.cy.js (2 of 2)
before:spec: cypress/e2e/run_events_spec_2.cy.js
before:spec is awaited
@@ -54,7 +54,7 @@ before:spec is awaited
1 passing
spec:end: cypress/e2e/run_events_spec_2.js { tests: 1, passes: 1, failures: 0 }
spec:end: cypress/e2e/run_events_spec_2.cy.js { tests: 1, passes: 1, failures: 0 }
after:spec is awaited
(Results)
@@ -68,7 +68,7 @@ after:spec is awaited
│ Screenshots: 0 │
│ Video: false │
│ Duration: X seconds │
│ Spec Ran: run_events_spec_2.js
│ Spec Ran: run_events_spec_2.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
after:run: { totalTests: 2, totalPassed: 2, totalFailed: 0 }
@@ -81,9 +81,9 @@ after:run is awaited
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✔ run_events_spec_1.js XX:XX 1 1 - - - │
│ ✔ run_events_spec_1.cy.js XX:XX 1 1 - - - │
├────────────────────────────────────────────────────────────────────────────────────────────────┤
│ ✔ run_events_spec_2.js XX:XX 1 1 - - - │
│ ✔ run_events_spec_2.cy.js XX:XX 1 1 - - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✔ All specs passed! XX:XX 2 2 - - -
@@ -99,14 +99,14 @@ exports['e2e plugin run events / handles video being deleted in after:spec'] = `
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (after_spec_deletes_video.js)
│ Specs: 1 found (after_spec_deletes_video.cy.js) │
│ Searched: cypress/e2e/* │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: after_spec_deletes_video.js (1 of 1)
Running: after_spec_deletes_video.cy.js (1 of 1)
✓ is true
@@ -125,7 +125,7 @@ exports['e2e plugin run events / handles video being deleted in after:spec'] = `
│ Screenshots: 0 │
│ Video: false │
│ Duration: X seconds │
│ Spec Ran: after_spec_deletes_video.js
│ Spec Ran: after_spec_deletes_video.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -136,7 +136,7 @@ exports['e2e plugin run events / handles video being deleted in after:spec'] = `
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✔ after_spec_deletes_video.js XX:XX 1 1 - - - │
│ ✔ after_spec_deletes_video.cy.js XX:XX 1 1 - - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✔ All specs passed! XX:XX 1 1 - - -
+37 -37
View File
@@ -2219,8 +2219,8 @@ exports['e2e record api interaction errors create instance 500 without paralleli
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 2 found (a_record.spec.js, b_record.spec.js)
│ Searched: cypress/e2e/*_record.spec.js
│ Specs: 2 found (a_record.cy.js, b_record.cy.js)
│ Searched: cypress/e2e/a_record.cy.js, cypress/e2e/b_record.cy.js
│ Params: Tag: false, Group: false, Parallel: false │
│ Run URL: https://dashboard.cypress.io/projects/cjvoj7/runs/12 │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -2242,8 +2242,8 @@ exports['e2e record api interaction errors create instance errors and exits on c
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (a_record_instantfail.spec.js) │
│ Searched: cypress/e2e/*_record_*
│ Specs: 1 found (a_record_instantfail.cy.js)
│ Searched: cypress/e2e/a_record_instantfail.cy.js
│ Params: Tag: false, Group: false, Parallel: false │
│ Run URL: https://dashboard.cypress.io/projects/cjvoj7/runs/12 │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -2265,8 +2265,8 @@ exports['e2e record api interaction errors postInstanceTests without paralleliza
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 2 found (a_record.spec.js, b_record.spec.js)
│ Searched: cypress/e2e/*_record.spec*
│ Specs: 2 found (a_record.cy.js, b_record.cy.js)
│ Searched: cypress/e2e/a_record.cy.js, cypress/e2e/b_record.cy.js
│ Params: Tag: false, Group: foo, Parallel: false │
│ Run URL: https://dashboard.cypress.io/projects/cjvoj7/runs/12 │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -2274,7 +2274,7 @@ exports['e2e record api interaction errors postInstanceTests without paralleliza
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: a_record.spec.js (1 of 2)
Running: a_record.cy.js (1 of 2)
Estimated: 8 seconds
We encountered an unexpected error talking to our servers.
@@ -2296,8 +2296,8 @@ exports['e2e record api interaction errors postInstanceTests with parallelizatio
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 2 found (a_record.spec.js, b_record.spec.js)
│ Searched: cypress/e2e/*_record.spec.js
│ Specs: 2 found (a_record.cy.js, b_record.cy.js)
│ Searched: cypress/e2e/a_record.cy.js, cypress/e2e/b_record.cy.js
│ Params: Tag: false, Group: foo, Parallel: true │
│ Run URL: https://dashboard.cypress.io/projects/cjvoj7/runs/12 │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -2305,7 +2305,7 @@ exports['e2e record api interaction errors postInstanceTests with parallelizatio
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: a_record.spec.js (1 of 2)
Running: a_record.cy.js (1 of 2)
Estimated: 8 seconds
We encountered an unexpected error talking to our servers.
@@ -2391,8 +2391,8 @@ exports['e2e record api skips specs records tests and exits without executing 1'
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 2 found (a_record_instantfail.spec.js, b_record.spec.js)
│ Searched: cypress/e2e/a_record_instantfail.spec.js, cypress/e2e/b_record.spec.js
│ Specs: 2 found (a_record_instantfail.cy.js, b_record.cy.js)
│ Searched: cypress/e2e/a_record_instantfail.cy.js, cypress/e2e/b_record.cy.js
│ Params: Tag: false, Group: false, Parallel: false │
│ Run URL: https://dashboard.cypress.io/projects/cjvoj7/runs/12 │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -2400,14 +2400,14 @@ exports['e2e record api skips specs records tests and exits without executing 1'
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: a_record_instantfail.spec.js (1 of 2)
Running: a_record_instantfail.cy.js (1 of 2)
Estimated: 8 seconds
This spec and its tests were skipped because the run has been canceled.
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: b_record.spec.js (2 of 2)
Running: b_record.cy.js (2 of 2)
Estimated: 8 seconds
@@ -2430,7 +2430,7 @@ exports['e2e record api skips specs records tests and exits without executing 1'
│ Video: false │
│ Duration: X seconds │
│ Estimated: 8 seconds │
│ Spec Ran: b_record.spec.js │
│ Spec Ran: b_record.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -2445,9 +2445,9 @@ exports['e2e record api skips specs records tests and exits without executing 1'
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ - a_record_instantfail.spec.js SKIPPED - - - - - │
│ - a_record_instantfail.cy.js SKIPPED - - - - - │
├────────────────────────────────────────────────────────────────────────────────────────────────┤
│ ✔ b_record.spec.js XX:XX 1 1 - - - │
│ ✔ b_record.cy.js XX:XX 1 1 - - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
- The run was canceled XX:XX 1 1 - - -
@@ -2470,8 +2470,8 @@ exports['e2e record api skips specs records tests and exits without executing in
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 2 found (a_record_instantfail.spec.js, b_record.spec.js)
│ Searched: cypress/e2e/a_record_instantfail.spec.js, cypress/e2e/b_record.spec.js
│ Specs: 2 found (a_record_instantfail.cy.js, b_record.cy.js)
│ Searched: cypress/e2e/a_record_instantfail.cy.js, cypress/e2e/b_record.cy.js
│ Params: Tag: false, Group: abc, Parallel: true │
│ Run URL: https://dashboard.cypress.io/projects/cjvoj7/runs/12 │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -2479,14 +2479,14 @@ exports['e2e record api skips specs records tests and exits without executing in
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: a_record_instantfail.spec.js (1 of 2)
Running: a_record_instantfail.cy.js (1 of 2)
Estimated: 8 seconds
This spec and its tests were skipped because the run has been canceled.
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: b_record.spec.js (2 of 2)
Running: b_record.cy.js (2 of 2)
Estimated: 8 seconds
@@ -2509,7 +2509,7 @@ exports['e2e record api skips specs records tests and exits without executing in
│ Video: false │
│ Duration: X seconds │
│ Estimated: 8 seconds │
│ Spec Ran: b_record.spec.js │
│ Spec Ran: b_record.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -2524,9 +2524,9 @@ exports['e2e record api skips specs records tests and exits without executing in
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ - a_record_instantfail.spec.js SKIPPED - - - - - │
│ - a_record_instantfail.cy.js SKIPPED - - - - - │
├────────────────────────────────────────────────────────────────────────────────────────────────┤
│ ✔ b_record.spec.js XX:XX 1 1 - - - │
│ ✔ b_record.cy.js XX:XX 1 1 - - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
- The run was canceled XX:XX 1 1 - - -
@@ -2549,8 +2549,8 @@ exports['e2e record empty specs succeeds when empty spec file 1'] = `
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 2 found (empty_suite.spec.js, empty.spec.js)
│ Searched: cypress/e2e/empty_suite.spec.js, cypress/e2e/empty.spec.js
│ Specs: 2 found (empty_suite.cy.js, empty.cy.js)
│ Searched: cypress/e2e/empty_suite.cy.js, cypress/e2e/empty.cy.js
│ Params: Tag: false, Group: false, Parallel: false │
│ Run URL: https://dashboard.cypress.io/projects/cjvoj7/runs/12 │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -2558,7 +2558,7 @@ exports['e2e record empty specs succeeds when empty spec file 1'] = `
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: empty_suite.spec.js (1 of 2)
Running: empty_suite.cy.js (1 of 2)
Estimated: 8 seconds
@@ -2577,7 +2577,7 @@ exports['e2e record empty specs succeeds when empty spec file 1'] = `
│ Video: true │
│ Duration: X seconds │
│ Estimated: 8 seconds │
│ Spec Ran: empty_suite.spec.js │
│ Spec Ran: empty_suite.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -2587,7 +2587,7 @@ exports['e2e record empty specs succeeds when empty spec file 1'] = `
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: empty.spec.js (2 of 2)
Running: empty.cy.js (2 of 2)
Estimated: 8 seconds
@@ -2606,7 +2606,7 @@ exports['e2e record empty specs succeeds when empty spec file 1'] = `
│ Video: true │
│ Duration: X seconds │
│ Estimated: 8 seconds │
│ Spec Ran: empty.spec.js │
│ Spec Ran: empty.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -2621,9 +2621,9 @@ exports['e2e record empty specs succeeds when empty spec file 1'] = `
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✔ empty_suite.spec.js XX:XX - - - - - │
│ ✔ empty_suite.cy.js XX:XX - - - - - │
├────────────────────────────────────────────────────────────────────────────────────────────────┤
│ ✔ empty.spec.js XX:XX - - - - - │
│ ✔ empty.cy.js XX:XX - - - - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✔ All specs passed! XX:XX - - - - -
@@ -2665,8 +2665,8 @@ exports['e2e record metadata sends Studio usage metadata 1'] = `
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (studio_written.spec.js) │
│ Searched: cypress/e2e/studio_written.spec.js │
│ Specs: 1 found (studio_written.cy.js)
│ Searched: cypress/e2e/studio_written.cy.js
│ Params: Tag: false, Group: false, Parallel: false │
│ Run URL: https://dashboard.cypress.io/projects/cjvoj7/runs/12 │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -2674,7 +2674,7 @@ exports['e2e record metadata sends Studio usage metadata 1'] = `
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: studio_written.spec.js (1 of 1)
Running: studio_written.cy.js (1 of 1)
Estimated: 8 seconds
@@ -2701,7 +2701,7 @@ exports['e2e record metadata sends Studio usage metadata 1'] = `
│ Video: true │
│ Duration: X seconds │
│ Estimated: 8 seconds │
│ Spec Ran: studio_written.spec.js │
│ Spec Ran: studio_written.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -2716,7 +2716,7 @@ exports['e2e record metadata sends Studio usage metadata 1'] = `
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✔ studio_written.spec.js XX:XX 4 4 - - - │
│ ✔ studio_written.cy.js XX:XX 4 4 - - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✔ All specs passed! XX:XX 4 4 - - -
+15 -15
View File
@@ -7,14 +7,14 @@ exports['retries / supports retries'] = `
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (fail-twice.js)
│ Searched: cypress/e2e/fail-twice.js
│ Specs: 1 found (fail-twice.cy.js) │
│ Searched: cypress/e2e/fail-twice.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: fail-twice.js (1 of 1)
Running: fail-twice.cy.js (1 of 1)
(Attempt 1 of 3) fail twice
@@ -35,21 +35,21 @@ exports['retries / supports retries'] = `
│ Screenshots: 2 │
│ Video: true │
│ Duration: X seconds │
│ Spec Ran: fail-twice.js
│ Spec Ran: fail-twice.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
(Screenshots)
- /XXX/XXX/XXX/cypress/screenshots/fail-twice.js/fail twice (failed).png (1280x720)
- /XXX/XXX/XXX/cypress/screenshots/fail-twice.js/fail twice (failed) (attempt 2).p (1280x720)
ng
- /XXX/XXX/XXX/cypress/screenshots/fail-twice.cy.js/fail twice (failed).png (1280x720)
- /XXX/XXX/XXX/cypress/screenshots/fail-twice.cy.js/fail twice (failed) (attempt 2 (1280x720)
).png
(Video)
- Started processing: Compressing to 32 CRF
- Finished processing: /XXX/XXX/XXX/cypress/videos/fail-twice.js.mp4 (X second)
- Finished processing: /XXX/XXX/XXX/cypress/videos/fail-twice.cy.js.mp4 (X second)
====================================================================================================
@@ -59,7 +59,7 @@ exports['retries / supports retries'] = `
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✔ fail-twice.js XX:XX 1 1 - - - │
│ ✔ fail-twice.cy.js XX:XX 1 1 - - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✔ All specs passed! XX:XX 1 1 - - -
@@ -83,14 +83,14 @@ https://on.cypress.io/test-retries
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (main.spec.js)
│ Searched: cypress/e2e/main.spec.js
│ Specs: 1 found (main.spec.cy.js) │
│ Searched: cypress/e2e/main.spec.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: main.spec.js (1 of 1)
Running: main.spec.cy.js (1 of 1)
✓ foo
@@ -109,14 +109,14 @@ https://on.cypress.io/test-retries
│ Screenshots: 0 │
│ Video: true │
│ Duration: X seconds │
│ Spec Ran: main.spec.js
│ Spec Ran: main.spec.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
(Video)
- Started processing: Compressing to 32 CRF
- Finished processing: /XXX/XXX/XXX/cypress/videos/main.spec.js.mp4 (X second)
- Finished processing: /XXX/XXX/XXX/cypress/videos/main.spec.cy.js.mp4 (X second)
====================================================================================================
@@ -126,7 +126,7 @@ https://on.cypress.io/test-retries
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✔ main.spec.js XX:XX 1 1 - - - │
│ ✔ main.spec.cy.js XX:XX 1 1 - - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✔ All specs passed! XX:XX 1 1 - - -
@@ -7,14 +7,14 @@ exports['e2e runnable execution / cannot navigate in before hook and test'] = `
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (beforehook-and-test-navigation.js)
│ Searched: cypress/e2e/beforehook-and-test-navigation.js
│ Specs: 1 found (beforehook-and-test-navigation.cy.js) │
│ Searched: cypress/e2e/beforehook-and-test-navigation.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: beforehook-and-test-navigation.js (1 of 1)
Running: beforehook-and-test-navigation.cy.js (1 of 1)
initial domain change
@@ -109,7 +109,7 @@ Because this error occurred during a \`before each\` hook we are skipping the re
│ Screenshots: 0 │
│ Video: true │
│ Duration: X seconds │
│ Spec Ran: beforehook-and-test-navigation.js
│ Spec Ran: beforehook-and-test-navigation.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -117,7 +117,7 @@ Because this error occurred during a \`before each\` hook we are skipping the re
- Started processing: Compressing to 32 CRF
- Finished processing: /XXX/XXX/XXX/cypress/videos/beforehook-and-test-navigation. (X second)
js.mp4
cy.js.mp4
====================================================================================================
@@ -127,7 +127,8 @@ Because this error occurred during a \`before each\` hook we are skipping the re
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✖ beforehook-and-test-navigation.js XX:XX 4 2 2 - - │
│ ✖ beforehook-and-test-navigation.cy.j XX:XX 4 2 2 - - │
│ s │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✖ 1 of 1 failed (100%) XX:XX 4 2 2 - -
@@ -143,14 +144,14 @@ exports['e2e runnable execution / runnables run correct number of times with nav
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (runnable-run-count.spec.js) │
│ Searched: cypress/e2e/runnable-run-count.spec.js │
│ Specs: 1 found (runnable-run-count.cy.js)
│ Searched: cypress/e2e/runnable-run-count.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: runnable-run-count.spec.js (1 of 1)
Running: runnable-run-count.cy.js (1 of 1)
suite 1.0
@@ -181,14 +182,14 @@ exports['e2e runnable execution / runnables run correct number of times with nav
│ Screenshots: 0 │
│ Video: true │
│ Duration: X seconds │
│ Spec Ran: runnable-run-count.spec.js │
│ Spec Ran: runnable-run-count.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
(Video)
- Started processing: Compressing to 32 CRF
- Finished processing: /XXX/XXX/XXX/cypress/videos/runnable-run-count.spec.js.mp4 (X second)
- Finished processing: /XXX/XXX/XXX/cypress/videos/runnable-run-count.cy.js.mp4 (X second)
====================================================================================================
@@ -198,7 +199,7 @@ exports['e2e runnable execution / runnables run correct number of times with nav
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✔ runnable-run-count.spec.js XX:XX 7 7 - - - │
│ ✔ runnable-run-count.cy.js XX:XX 7 7 - - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✔ All specs passed! XX:XX 7 7 - - -
@@ -214,14 +215,14 @@ exports['e2e runnable execution / runs correctly after top navigation with alrea
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (runnables_already_run_suite.js)
│ Searched: cypress/e2e/runnables_already_run_suite.js
│ Specs: 1 found (runnables_already_run_suite.cy.js) │
│ Searched: cypress/e2e/runnables_already_run_suite.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: runnables_already_run_suite.js (1 of 1)
Running: runnables_already_run_suite.cy.js (1 of 1)
Top level describe
@@ -254,14 +255,14 @@ exports['e2e runnable execution / runs correctly after top navigation with alrea
│ Screenshots: 1 │
│ Video: false │
│ Duration: X seconds │
│ Spec Ran: runnables_already_run_suite.js
│ Spec Ran: runnables_already_run_suite.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
(Screenshots)
- /XXX/XXX/XXX/cypress/screenshots/runnables_already_run_suite.js/Top level descri (1280x720)
be -- suite 2 -- should fail (failed).png
- /XXX/XXX/XXX/cypress/screenshots/runnables_already_run_suite.cy.js/Top level des (1280x720)
cribe -- suite 2 -- should fail (failed).png
====================================================================================================
@@ -271,7 +272,7 @@ exports['e2e runnable execution / runs correctly after top navigation with alrea
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✖ runnables_already_run_suite.js XX:XX 2 1 1 - - │
│ ✖ runnables_already_run_suite.cy.js XX:XX 2 1 1 - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✖ 1 of 1 failed (100%) XX:XX 2 1 1 - -
@@ -149,15 +149,16 @@ exports['e2e sessions / sessions persist on reload, and clear between specs'] =
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 2 found (session_persist_spec_1.js, session_persist_spec_2.js)
│ Searched: cypress/e2e/session_persist_spec_1.js, cypress/e2e/session_persist_spec_2.js
│ Specs: 2 found (session_persist_spec_1.cy.js, session_persist_spec_2.cy.js) │
│ Searched: cypress/e2e/session_persist_spec_1.cy.js, cypress/e2e/session_persist_spec_2.cy.
│ js │
│ Experiments: experimentalSessionAndOrigin=true │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: session_persist_spec_1.js (1 of 2)
Running: session_persist_spec_1.cy.js (1 of 2)
persist saved sessions between spec reruns
@@ -181,13 +182,13 @@ exports['e2e sessions / sessions persist on reload, and clear between specs'] =
│ Screenshots: 0 │
│ Video: false │
│ Duration: X seconds │
│ Spec Ran: session_persist_spec_1.js
│ Spec Ran: session_persist_spec_1.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: session_persist_spec_2.js (2 of 2)
Running: session_persist_spec_2.cy.js (2 of 2)
after running spec with saved session
@@ -208,7 +209,7 @@ exports['e2e sessions / sessions persist on reload, and clear between specs'] =
│ Screenshots: 0 │
│ Video: false │
│ Duration: X seconds │
│ Spec Ran: session_persist_spec_2.js
│ Spec Ran: session_persist_spec_2.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -219,9 +220,9 @@ exports['e2e sessions / sessions persist on reload, and clear between specs'] =
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✔ session_persist_spec_1.js XX:XX 1 1 - - - │
│ ✔ session_persist_spec_1.cy.js XX:XX 1 1 - - - │
├────────────────────────────────────────────────────────────────────────────────────────────────┤
│ ✔ session_persist_spec_2.js XX:XX 1 1 - - - │
│ ✔ session_persist_spec_2.cy.js XX:XX 1 1 - - - │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✔ All specs passed! XX:XX 2 2 - - -
+16 -16
View File
@@ -275,15 +275,15 @@ exports['e2e stdout displays fullname of nested specfile 1'] = `
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 3 found (spec.js, stdout_specfile.js, stdout_specfile_display_spec_with_a_really_l
│ ong_name_that_never_has_a_line_break_or_new_line.js)
│ Specs: 3 found (spec.cy.js, stdout_specfile.cy.js, stdout_specfile_display_spec_with_a_re │
ally_long_name_that_never_has_a_line_break_or_new_line.cy.js) │
│ Searched: cypress/e2e/nested-1/nested-2/nested-3/* │
└────────────────────────────────────────────────────────────────────────────────────────────────┘
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: spec.js (1 of 3)
Running: spec.cy.js (1 of 3)
stdout_specfile_display_spec
@@ -304,19 +304,19 @@ exports['e2e stdout displays fullname of nested specfile 1'] = `
│ Screenshots: 0 │
│ Video: true │
│ Duration: X seconds │
│ Spec Ran: spec.js
│ Spec Ran: spec.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
(Video)
- Started processing: Compressing to 32 CRF
- Finished processing: /XXX/XXX/XXX/cypress/videos/spec.js.mp4 (X second)
- Finished processing: /XXX/XXX/XXX/cypress/videos/spec.cy.js.mp4 (X second)
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: stdout_specfile.js (2 of 3)
Running: stdout_specfile.cy.js (2 of 3)
stdout_specfile_display_spec
@@ -337,20 +337,20 @@ exports['e2e stdout displays fullname of nested specfile 1'] = `
│ Screenshots: 0 │
│ Video: true │
│ Duration: X seconds │
│ Spec Ran: stdout_specfile.js
│ Spec Ran: stdout_specfile.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
(Video)
- Started processing: Compressing to 32 CRF
- Finished processing: /XXX/XXX/XXX/cypress/videos/stdout_specfile.js.mp4 (X second)
- Finished processing: /XXX/XXX/XXX/cypress/videos/stdout_specfile.cy.js.mp4 (X second)
────────────────────────────────────────────────────────────────────────────────────────────────────
Running: stdout_specfile_display_spec_with_a_really_long_name_that_never_has_ (3 of 3)
a_line_break_or_new_line.js
a_line_break_or_new_line.cy.js
stdout_specfile_display_spec
@@ -372,15 +372,15 @@ exports['e2e stdout displays fullname of nested specfile 1'] = `
│ Video: true │
│ Duration: X seconds │
│ Spec Ran: stdout_specfile_display_spec_with_a_really_long_name_that_never_has_a_line_break │
│ _or_new_line.js
│ _or_new_line.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
(Screenshots)
- /XXX/XXX/XXX/cypress/screenshots/stdout_specfile_display_spec_with_a_really_long (1000x660)
_name_that_never_has_a_line_break_or_new_line.js/stdout_specfile_display_spec --
passes.png
_name_that_never_has_a_line_break_or_new_line.cy.js/stdout_specfile_display_spec
-- passes.png
(Video)
@@ -388,7 +388,7 @@ exports['e2e stdout displays fullname of nested specfile 1'] = `
- Started processing: Compressing to 32 CRF
- Finished processing: /XXX/XXX/XXX/cypress/videos/stdout_specfile_display_spec_wi (X second)
th_a_really_long_name_that_never_has_a_line_break_or_new_li
ne.js.mp4
ne.cy.js.mp4
====================================================================================================
@@ -398,13 +398,13 @@ exports['e2e stdout displays fullname of nested specfile 1'] = `
Spec Tests Passing Failing Pending Skipped
┌────────────────────────────────────────────────────────────────────────────────────────────────┐
│ ✔ spec.js XX:XX 1 1 - - - │
│ ✔ spec.cy.js XX:XX 1 1 - - - │
├────────────────────────────────────────────────────────────────────────────────────────────────┤
│ ✔ stdout_specfile.js XX:XX 1 1 - - - │
│ ✔ stdout_specfile.cy.js XX:XX 1 1 - - - │
├────────────────────────────────────────────────────────────────────────────────────────────────┤
│ ✔ stdout_specfile_display_spec_with_a XX:XX 1 1 - - - │
│ _really_long_name_that_never_has_a_ │
│ line_break_or_new_line.js
│ line_break_or_new_line.cy.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
✔ All specs passed! XX:XX 3 3 - - -
@@ -82,7 +82,7 @@ As the nodeVersion configuration option will be removed in a future release, it
│ Cypress: 1.2.3 │
│ Browser: FooBrowser 88 │
│ Specs: 1 found (bundled.spec.js) │
│ Searched: cypress/integration/bundled.spec.js │
│ Searched: cypress/e2e/bundled.spec.js
└────────────────────────────────────────────────────────────────────────────────────────────────┘
@@ -1,7 +1,7 @@
module.exports = {
'e2e': {
setupNodeEvents (on, config) {
config.specPattern = 'cypress/e2e/*-spec.js'
config.specPattern = 'cypress/e2e/a_record.cy.js'
return config
},
@@ -4,6 +4,7 @@ const plugin = require('./cypress/plugins')
module.exports = defineConfig({
retries: null,
e2e: {
specPattern: 'cypress/e2e/**/*.{js,jsx,mjs,ts,tsx,coffee}',
setupNodeEvents (on, config) {
return plugin(on, config)
},
@@ -2,6 +2,7 @@ const state = {}
module.exports = {
'e2e': {
'record': false,
setupNodeEvents (on, config) {
on('task', {
incrState (arg) {
@@ -0,0 +1,8 @@
describe('dummy file', () => {
it('should never execute', () => {
throw Error(`
This is an mp4 file, and should never be executed.
If you are seeing this, something is wrong with the spec detection logic.
`)
})
})
@@ -1,6 +1,6 @@
module.exports = {
'e2e': {
'specPattern': '../integration/**/*',
'specPattern': '../e2e/**/*',
'supportFile': false,
},
}
@@ -1,7 +1,6 @@
module.exports = {
'e2e': {
'supportFile': false,
specPattern: 'cypress/e2e/**/*.cy.{js,jsx,ts,tsx}',
setupNodeEvents (on, config) {
on('file:preprocessor', () => '/does/not/exist.js')
@@ -1,5 +1,6 @@
module.exports = {
'e2e': {
'specPattern': 'cypress/e2e/*',
'supportFile': false,
setupNodeEvents (on, config) {
process.stderr.write('Plugin Loaded\n')
+2 -2
View File
@@ -18,7 +18,7 @@ describe('e2e cdp', function () {
// NOTE: this test takes almost a minute and is largely redundant with protocol_spec
systemTests.it.skip('fails when remote debugging port cannot be connected to', {
project: 'remote-debugging-port-removed',
spec: 'spec.ts',
spec: 'spec.cy.ts',
browser: 'chrome',
expectedExitCode: 1,
})
@@ -26,7 +26,7 @@ describe('e2e cdp', function () {
// https://github.com/cypress-io/cypress/issues/5685
systemTests.it('handles disconnections as expected', {
project: 'remote-debugging-disconnect',
spec: 'spec.ts',
spec: 'spec.cy.ts',
browser: 'chrome',
expectedExitCode: 1,
snapshot: true,
+1 -1
View File
@@ -9,7 +9,7 @@ describe('e2e plugins', () => {
it('fails when spec does not exist', function () {
return systemTests.exec(this, {
spec: 'spec.js',
spec: 'spec.cy.js',
project: 'non-existent-spec',
sanitizeScreenshotDimensions: true,
snapshot: true,
+3 -3
View File
@@ -210,7 +210,7 @@ describe('e2e cookies', () => {
},
},
processEnv: FORCED_SAMESITE_ENV,
spec: 'cookies_spec_baseurl.js',
spec: 'cookies_spec_baseurl.cy.js',
snapshot: true,
onRun: (exec) => {
return exec({
@@ -262,7 +262,7 @@ describe('e2e cookies', () => {
otherHttpsUrl,
},
},
spec: 'cookies_spec_baseurl.js',
spec: 'cookies_spec_baseurl.cy.js',
snapshot: true,
onRun: (exec) => {
return exec({
@@ -280,7 +280,7 @@ describe('e2e cookies', () => {
},
},
originalTitle: sharedNoBaseUrlSpecSnapshot,
spec: 'cookies_spec_no_baseurl.js',
spec: 'cookies_spec_no_baseurl.cy.js',
snapshot: true,
})
})
+1 -1
View File
@@ -24,7 +24,7 @@ describe('max listeners warning spec', () => {
// create a bunch of dummy test files to reproduce #1305
await fs.mkdirp(integrationPath)
await Promise.all(
_.times(15, (i) => fs.writeFile(path.join(integrationPath, `${i}.spec.js`), `it('test', () => {})`)),
_.times(15, (i) => fs.writeFile(path.join(integrationPath, `${i}.cy.js`), `it('test', () => {})`)),
)
const { stderr } = await exec()
+1 -1
View File
@@ -4,7 +4,7 @@ describe('e2e non-proxied spec', () => {
systemTests.setup()
systemTests.it('passes', {
spec: 'spec.js',
spec: 'spec.cy.js',
config: {
video: false,
},
+1 -1
View File
@@ -206,7 +206,7 @@ describe('e2e plugins', function () {
// https://github.com/cypress-io/cypress/issues/8361
it('supports .mjs files', function () {
return systemTests.exec(this, {
spec: 'mjs_spec.mjs',
spec: 'mjs_spec.cy.mjs',
})
})
})
+9 -9
View File
@@ -396,7 +396,7 @@ describe('e2e record', () => {
return systemTests.exec(this, {
key: 'f858a2bc-b469-4e48-be67-0876339ee7e1',
configFile: 'cypress-with-project-id.config.js',
spec: 'studio_written.spec.js',
spec: 'studio_written.cy.js',
record: true,
snapshot: true,
})
@@ -447,7 +447,7 @@ describe('e2e record', () => {
key: 'f858a2bc-b469-4e48-be67-0876339ee7e1',
configFile: 'cypress-with-project-id.config.js',
record: true,
spec: 'empty_suite.spec.js,empty.spec.js',
spec: 'empty_suite.cy.js,empty.cy.js',
snapshot: true,
expectedExitCode: 0,
})
@@ -619,7 +619,7 @@ describe('e2e record', () => {
await systemTests.exec(this, {
key: 'f858a2bc-b469-4e48-be67-0876339ee7e1',
configFile: 'cypress-with-project-id-without-video.config.js',
spec: 'a_record.spec.js,b_record.spec.js',
spec: 'a_record.cy.js,b_record.cy.js',
record: true,
snapshot: false,
})
@@ -660,7 +660,7 @@ describe('e2e record', () => {
await systemTests.exec(this, {
key: 'f858a2bc-b469-4e48-be67-0876339ee7e1',
configFile: 'cypress-with-project-id-without-video.config.js',
spec: 'a_record_instantfail.spec.js,b_record.spec.js',
spec: 'a_record_instantfail.cy.js,b_record.cy.js',
record: true,
snapshot: true,
expectedExitCode: 1,
@@ -688,7 +688,7 @@ describe('e2e record', () => {
await systemTests.exec(this, {
key: 'f858a2bc-b469-4e48-be67-0876339ee7e1',
configFile: 'cypress-with-project-id-without-video.config.js',
spec: 'a_record_instantfail.spec.js,b_record.spec.js',
spec: 'a_record_instantfail.cy.js,b_record.cy.js',
record: true,
snapshot: true,
group: 'abc',
@@ -891,7 +891,7 @@ describe('e2e record', () => {
await systemTests.exec(this, {
key: 'f858a2bc-b469-4e48-be67-0876339ee7e1',
configFile: 'cypress-with-project-id.config.js',
spec: '*_record.spec.js',
spec: 'a_record.cy.js,b_record.cy.js',
record: true,
snapshot: true,
expectedExitCode: 1,
@@ -1203,7 +1203,7 @@ describe('e2e record', () => {
return systemTests.exec(this, {
key: 'f858a2bc-b469-4e48-be67-0876339ee7e1',
configFile: 'cypress-with-project-id.config.js',
spec: '*_record_*',
spec: 'a_record_instantfail.cy.js',
record: true,
snapshot: true,
expectedExitCode: 1,
@@ -1257,7 +1257,7 @@ describe('e2e record', () => {
return systemTests.exec(this, {
key: 'f858a2bc-b469-4e48-be67-0876339ee7e1',
configFile: 'cypress-with-project-id.config.js',
spec: '*_record.spec*',
spec: 'a_record.cy.js,b_record.cy.js',
group: 'foo',
ciBuildId: 1,
expectedExitCode: 1,
@@ -1281,7 +1281,7 @@ describe('e2e record', () => {
await systemTests.exec(this, {
key: 'f858a2bc-b469-4e48-be67-0876339ee7e1',
configFile: 'cypress-with-project-id.config.js',
spec: '*_record.spec.js',
spec: 'a_record.cy.js,b_record.cy.js',
record: true,
group: 'foo',
ciBuildId: 'ciBuildId123',
+2 -2
View File
@@ -7,7 +7,7 @@ describe('retries', () => {
it('supports retries', {
project: 'retries-2',
spec: 'fail-twice.js',
spec: 'fail-twice.cy.js',
snapshot: true,
})
@@ -18,7 +18,7 @@ describe('retries', () => {
it('warns about retries plugin', {
project: 'plugin-retries',
spec: 'main.spec.js',
spec: 'main.spec.cy.js',
snapshot: true,
})
})
+3 -3
View File
@@ -21,19 +21,19 @@ describe('e2e runnable execution', () => {
// https://github.com/cypress-io/cypress/issues/1987
systemTests.it('cannot navigate in before hook and test', {
project: 'hooks-after-rerun',
spec: 'beforehook-and-test-navigation.js',
spec: 'beforehook-and-test-navigation.cy.js',
snapshot: true,
expectedExitCode: 2,
})
systemTests.it('runnables run correct number of times with navigation', {
project: 'hooks-after-rerun',
spec: 'runnable-run-count.spec.js',
spec: 'runnable-run-count.cy.js',
snapshot: true,
})
systemTests.it('runs correctly after top navigation with already ran suite', {
spec: 'runnables_already_run_suite.js',
spec: 'runnables_already_run_suite.cy.js',
snapshot: true,
expectedExitCode: 1,
config: { video: false },
+1 -1
View File
@@ -139,7 +139,7 @@ describe('e2e sessions', () => {
})
it('sessions persist on reload, and clear between specs', {
spec: 'session_persist_spec_1.js,session_persist_spec_2.js',
spec: 'session_persist_spec_1.cy.js,session_persist_spec_2.cy.js',
snapshot: true,
config: {
experimentalSessionAndOrigin: true,
+1 -2
View File
@@ -35,8 +35,7 @@ describe('e2e system node', () => {
expect(stderr).to.contain('Plugin Electron version: undefined')
})
// TODO:(tgriesser) originally skipped this, not sure why
it.skip('uses bundled node when launching plugins file', async function () {
it('uses bundled node when launching plugins file', async function () {
const { stderr } = await systemTests.exec(this, {
project: 'system-node',
config: {