* feat: set up experimentalUseDefaultDocumentDomain to disallow document.domain overwritting
* use default domain around experimentalUseDefaultDocumentDomain in main iframe and spec bridge iframes. Also adapt CORS policy to use same-origin if experimental flag is set
* run ci
* fix: add insertion of experimental flag where is was needed/missing
* chore: add system test to exercise experimental flag for expected behavior
* fix: fix issues with template updates to conform to squirrelly v7
* fix: update config tests to include new experimental flag
* run ci
* fix: trailing whitespace [run ci]
* chore: update snapshot
* run ci
* fix: update proxy unit tests to account for experimentalUseDefaultDocumentDomain
* run ci
* fix: Allow component tests with special characters in filepath (#25299)
feat: cut over experimental flag to take list of known problematic domains via string/glob pattern
run ci
chore: update system test and fix broken config
* fix: fix server unit and integration tests. integration tests should no longer use google to test against injection as we do not inject document.domain on google domains
* run ci
* run ci
* fix: server integration tests where google documents are expected to receive document.domain injection. Kept test same by changing URL
* run ci
* fix: update server test with mssing unupdated assertions
* run ci
* fix: turn off experimental flag by default while recommending sane defaults to users to configure
* run ci
* chore: fix typings [run ci]
* run ci
* chore: make experiment an e2e option only
* run ci
* chore: address comments in code review
* chore: rename experimentalUseDefaultDocumentDomain to experimentalSkipDomainInjection
* fix regression in shouldInjectionDocumentDomain utility function and add unit tests
* run ci
* chore: rename documentSuperDomainIfExists to superDomain [run ci]
* chore: address comments from code review
* chore: just pass opts through to policyForDomain
* run ci
Co-authored-by: Mike Plummer <mike-plummer@users.noreply.github.com>
* fix: Improve TypeScript support for custom queries
* Typo fix
* Fix TS more
* Move 'ensures' off of cy and onto Cypress
* Type fixes
* One missed replacement
* Test fixes
* Properly pass in to ensureRunnable
* Add .eslintignores to quiet down warnings
* Review feedback
* Update cli/types/cypress.d.ts
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
* feat: re-enable Run All Specs (#24683)
* fix: disable query in run-mode
* feat: Run-all-specs-ui (#24738)
* wip run-all-specs-ui
* added component tests for specs-list, inline-specs-list, and run-all-specs
* updated tests for specslist, inlinespeclist, and runAllSpecs
* simplify test
* make prop with default value optional
* enable run all specs
* use named slot for clarify
* use Record type
* remove un-necessary dynamic component
* use group and hover to inline css
* fix tests
* fix tests and use snapshot for style testing
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
* fix typescript
* fix test
* build binary for run all specs
* fix: tweaks for Run All Specs (#24746)
* update ui [skip ci]
* change types to reflect run all specs is e2e only
* chore: separate run all specs components
* fix typescript error
* fix: run-all UI tweaks and keyboard nav (#24757)
Closes undefined
* fix UI test
* move listener and use i18n [skip ci] (#24761)
* fix: run-all-specs duplicate file-matching (#24763)
* chore: limit linting [skip ci]
* do not get separator until app is loaded
* fix test
Co-authored-by: Zachary Williams <ZachJW34@gmail.com>
Co-authored-by: amehta265 <65267668+amehta265@users.noreply.github.com>
* chore: make error more inclusive of future cypress versions
* Additional wording change
Co-authored-by: Mark Noonan <mark@cypress.io>
* Update snapshot to match
* fix test (hopefully)
Co-authored-by: Stokes Player <stokes@cypress.io>
Co-authored-by: Mark Noonan <mark@cypress.io>
* fix: remove server and route commands
* This won't totally pass but it's a step in the right direction.
* Should be down to only two failing tests due to abort.
* fix the alias.<thing> api for intercept to be equivalent to route.
* adjust timeouts to reduce flake, ideally
* skip xhr abort tests
* More clean up
* Increase timeout
* trick next version
* fix unit tests probably
* yeah sure
* Apply suggestions from code review
Co-authored-by: Blue F <blue@cypress.io>
* remove addXhrLog
* Remove more usage of XHR stemming from proxy-logging
* Remove a couple of files that found their way back with the merge from release/12.0.0
* remove more server types
* increase timeouts again to prevent flake
Co-authored-by: Blue F <blue@cypress.io>
Co-authored-by: Zach Bloomquist <git@chary.us>
* Handle chrome tab and browser crashes.
* handle process crashes and add system tests
* handle crashing on windows
* updating comment
* update unit tests
* Update packages/server/lib/browsers/index.ts
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* fix flaky system test probably
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
* chore(webkit): update error stack parsing and related system tests
* Adding better comment
* Putting column back. Indexing at 1.
* Let's wait for WebKit fixes to land for this
* Using default name/location values already used in stack enhancing logic
* Incorrect bracket in regex
* Trying without location, as the fake location causes more problems downstream.
* Loosening regex around locations in stack replacement
* Defaulting location sans row/column
* Parsing stack lines for reporter with unique regex
* D'oh
* Making the validation against '<unknown>' more specific
* Don't want a capture group here
* Updating spec_isolation system tests
* Consolidating regex pattern to errors package
* Can just keep this global now
* Simplifying regex. Removing lineAndColumn numbers from unknown locations.
* Updating system test stack regex
* Getting better baseline
* Revert "Updating system test stack regex"
This reverts commit 2b91eff369.
* Forking normalization for webkit to track down diffs
* Ensure line or column are set before rendering in enhanced stack
* Need to be a little more flexible
* Tweaking leading newline detection
* Trying out new composed regex
* Few more tweaks for multiple leading newlines and file locations without function name
* Updating remainderOfStack pattern with proper escaping
* Cleaning up comments
* Filtering native code from absolute path logic
* Rebuild CI after outage
* chore: wire up Cypress Studio (#23413)
* wip
* wip
* wip - spike
* more wip [skip ci]
* update style
* fix ts
* move types around
* extract types
* lint
* fixing tests
* fix component test
* skip some tests
* do not error on experimentalStudio flag
* add studio controls placeholder
* fixing tests
* revert
* revert changes
* rename store
* rename method
* remove comment
* refactor
* correctly feature flag studio
* simplify code
* simplify code
* lift check into useEventManager
* correctly hide create studio prompt based on flag;
* remove superfulous css
* rename variables
* fix bugs
* wip
* unskip tests
* unskip more tests
* fix a bug in the assertion API
* fix bug in assertions [skip ci]
* wip - bugs [skip ci]
* feat: add experimentalStudio flag back (#23506)
Co-authored-by: astone123 <adams@cypress.io>
* chore: Add Studio UI to Cypress 10 (#23537)
* wip
* wip
* wip - spike
* more wip [skip ci]
* update style
* fix ts
* move types around
* extract types
* lint
* fixing tests
* fix component test
* skip some tests
* do not error on experimentalStudio flag
* add studio controls placeholder
* fixing tests
* revert
* revert changes
* rename store
* rename method
* remove comment
* refactor
* correctly feature flag studio
* chore: wip add barebones studio modals
* simplify code
* simplify code
* lift check into useEventManager
* correctly hide create studio prompt based on flag;
* remove superfulous css
* chore: style studio toolbar
* chore: misc feedback
* chore: remove studio store prop
* chore: studio URL prompt and other changes
* update component
* chore: UI styling and remove studio init modal
* chore: revert unnecessary changes
* chore: fix types
* chore: fix some tests, minor refactor (#23545)
* fix test
* fix test
* add noHelp link to StandardModal
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
* test: studio e2e tests (#23546)
* add basic e2e test
* add some e2e tests for studio and a note on limitations
* additional spec
* add more tests, refactor helper
* fix bug in studio
* remove test code
* chore: UI feedback
* fix race condition
* update tests
* rename test
* improve types in reporter
* remove dead code
* improve tests
* merge tests into one spec
* chore: Cap instruction modal width; exit studio mode when new spec is chosen
* chore: Only render studio error when test has failed; add test for studioEnabled
* correctly check if command is studio or not
* improve specs and hopefully reduce flake
* communicate studio state from app->reporter
* receive studio save state validity from app
* fix test
* improve test coverage
* fix external link
Co-authored-by: astone123 <adams@cypress.io>
* revive logic to run CT in a single tab
* add feature flag: experimentalSingleTabRunMode
* remove log
* reset browser state between tests
* document single tab run mode experiment;
* add system test for experimental run mode
* fix snapshots
* use more simple project for testing
* additional guard;
* fix test
* Apply suggestions from code review
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
* destroy aut after each spec
* update snapshot
* fix types
* add experiment flag error
* add warning when using experimental flag with e2e
* build binaries for experimentalSingleTabRunMode feature
* build binaries take 2
* make error message more open ended
* destroy AUT later in run mode lifecycle
* add additional assertion around experimental flag
* simplify error
* remove test code from production code
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
* wip: basic implementation
* update dependencies to have maxVersion
* handle promises correctly
* fix test
* update test project and styling
* only check for CT deps in CT
* install required deps
* revert
* rework detection and extend tests
* remove unused code
* remove more code
Co-authored-by: Zachary Williams <ZachJW34@gmail.com>
* feat: show better error message if testing type is not configured
* Add tests
* Update tests
* Fix some tests
* Fix some tests
* Fix test
* Fix tests
* Update packages/errors/src/errors.ts
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
* Update with code review
* Fix test
* Add on link
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
* fix: UNIFY-1774, throw error if we do not detect a webpackConfig for the user
* remove dead code, rely on auto-sourcing webpack config
* fix error styles, exit the devServer process when config is missing, guard against empty remoteState
* Add missing webpack for todos project
* Update npm/webpack-dev-server/src/makeWebpackConfig.ts
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
Co-authored-by: Zachary Williams <ZachJW34@gmail.com>
* fix: UNIFY-1408, warnings should be nested appropriately & clearable
* Add fix / test for UNIFY-1604, UNIFY-1732
* better tests around baseUrl handling, remove unneeded logic
* Fix stub usage, test failure, pingBaseUrl behavior
* fix duplicate test title
* add function to detect lang
* update test files
* update pkg.json
* remove concept of lang from wizard
* update tests
* fix tests and add debugging
* update test
* fix test
* add ts to ts project deps
* update assertion
* empty commit to trigger CI
* fix ts
* add debug log
* error when cypress is not found, or version is mismatching for migration
* add tests
* add defensive try/catch
* Update packages/errors/src/errors.ts
Co-authored-by: Zach Bloomquist <git@chary.us>
* fix error snapshots
* remove usage of resolve-from
* make error more clear around open vs migration
Co-authored-by: Zach Bloomquist <git@chary.us>
* fix: restart dev-server on config change
* close dev server before cp is spawned
* fix test that is failing... not sure why
* cleanup unsued close events
* remove wait
* add back in close for unit tests
Co-authored-by: Tim Griesser <tgriesser10@gmail.com>
* fix: make error on integration folder point to e2e
* fix: add context for testing type to the errors
* fix: pass testnigtype to errors
* add testingType where needed
* show setupNodeEvent when error
* fix some unit tests
* update snapshot
* update snapshot
* test: add test for stupNodeEvents
* fix: add name for config error
* fix: use distinct errors for root and e2e failures
* test: update 2 snapshots
* snapshot update again
* update snapshots again normally this time