Commit Graph

138 Commits

Author SHA1 Message Date
Stokes Player eca37aec74 chore: record event gql mutation (#27416)
* feat: record event gql mutation

* Allow projectSlug to be optional

* Do not start source in run mode

* Fix unit test

* ts linting fix

* Adding test

* Adding test

* refactor

---------

Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
2023-08-07 09:45:37 +10:00
Bill Glesias 68f8f99a9d chore: update node types from v14 to v16 latest to be current (no 16.16.0 types exist). Fixes types issues with webpack upgrade. (#27425)
chore: bump the Typescript minimum version in the CLI from 3.4 to 3.9
2023-08-01 09:16:49 -04:00
Stokes Player a3e4a8a606 fix: correct invalid stored preference for in-app notifications (#27237) 2023-07-07 16:36:28 -04:00
Lachlan Miller 0107efbc3e feat: In-App Run Notifications (#27078)
Co-authored-by: Stokes Player <stokes@cypress.io>
Co-authored-by: astone123 <adams@cypress.io>
2023-06-28 10:23:21 -04:00
Jordan d77341e90c chore: make git message warnings remain dismissable (#26812)
* feat: make git message warnings remain dismissable

* chore: update CHANGELOG

* chore: update CHANGELOG

* chore: remove unneeded code

* chore: update BannerId types

* chore: fix queryies

* chore: clean up PR

* chore: move TrackedWarning to frontend-shared

* chore: update import

* ref: move TrackedWarning to TrackedBanner

* chore: udpate CHANGELOG

* fix: update TrackedBanner to parse markdown message

* chore: set TrackedBanner default message prop

* chore: update RunsContainer

* chore: add missing tests and update alert type

---------

Co-authored-by: Stokes Player <stokes@cypress.io>
2023-06-05 13:40:10 -04:00
Mike Plummer adc4c5e32c feat: Component Testing banner (#26625)
Co-authored-by: elevatebart <bart@cypress.io>
2023-05-05 16:07:41 -05:00
Emily Rohrbough f49e25322c chore: list rimraf dev-dependency once in repo (#26257) 2023-03-28 20:49:09 -05:00
Adam Stone-Lord cfd40887d5 chore: ensure that current version is loaded before taking snapshot of launchpad migration screen (#26105) 2023-03-15 17:37:06 -04:00
Zachary Williams c5072668b2 feat: debug page tutorial slideshow (#25886)
* feat: debug page tutorial slideshow

* fix tests, add changelog entry

* address feedback

* update changelog
2023-02-22 14:59:21 +10:00
Stokes Player 660ff67578 feat: Debug page [IATR] (#25488)
Co-authored-by: Zachary Williams <ZachJW34@gmail.com>
Co-authored-by: Ankit <ankit@cypress.io>
Co-authored-by: Stokes Player <stokes.player@gmail.com>
Co-authored-by: elevatebart <bart@cypress.io>
Co-authored-by: Rocky <25568640+rockindahizzy@users.noreply.github.com>
Co-authored-by: Stokes Player <stokes@cypress.io>
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
Co-authored-by: Mark Noonan <mark@cypress.io>
Co-authored-by: Mike Plummer <mikep@cypress.io>
Co-authored-by: amehta265 <65267668+amehta265@users.noreply.github.com>
Co-authored-by: Adam Stone-Lord <adams@cypress.io>
Co-authored-by: Mike Plummer <mike-plummer@users.noreply.github.com>
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
2023-01-31 10:00:03 -05:00
Bill Glesias d470f59ea2 feat: experimental skip domain injection (#25307)
* 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>
2023-01-09 10:00:05 -05:00
Emily Rohrbough 797c8f8d77 chore: update session api types & exposed global helpers (#24980)
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Chris Breiding <chrisbreiding@users.noreply.github.com>
2022-12-06 08:19:39 -06:00
Emily Rohrbough 20680accc4 feat: v12.0.0 Welcome Page Splashscreen (#24925)
* feat: 12.0.0 Welcome Page

* Update packages/launchpad/src/migration/MajorVersionWelcome.vue

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>

* add v12 release date

* fix space between external link & period

* fix period space issue? & add onlink

* Update packages/launchpad/src/migration/MajorVersionWelcome.vue

Co-authored-by: Mark Noonan <mark@cypress.io>

* fix ci scroll issue?

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Mark Noonan <mark@cypress.io>
Co-authored-by: Matt Henkes <mjhenkes@gmail.com>
2022-12-02 09:39:30 -06:00
Emily Rohrbough 05530ce531 chore(12): merge develop into release/12.0.0 (#24927)
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
Co-authored-by: Mark Noonan <mark@cypress.io>
Co-authored-by: Matt Henkes <mjhenkes@gmail.com>
Co-authored-by: Mike Plummer <mike-plummer@users.noreply.github.com>
Co-authored-by: Zach Bloomquist <git@chary.us>
Co-authored-by: Chris Breiding <chrisbreiding@users.noreply.github.com>
Co-authored-by: Zachary Williams <ZachJW34@gmail.com>
Co-authored-by: Feng Yu <abcfy2@users.noreply.github.com>
2022-12-01 19:33:44 -06:00
Blue F 8ff38cdb01 feat: Create public Cypress.ensure API for use with custom queries (#24697)
* 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>
2022-11-29 09:34:34 -06:00
Emily Rohrbough 5f56670051 chore(12): merge in develop (#24783)
Co-authored-by: Ben M <benm@cypress.io>
Co-authored-by: Dariusz Czajkowski <darek@darek.dev>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
Co-authored-by: Adam Stone <adams@cypress.io>
2022-11-23 07:55:29 -06:00
BlueWinds 286bd9dac1 Merge remote-tracking branch 'origin/develop' into update-release-12 2022-11-22 08:57:02 -08:00
Lachlan Miller 4bbd78e22e feat: Re-introduce Run All specs for End to End under experimentalRunAllSpecs flag (#24745)
* 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>
2022-11-22 17:28:48 +10:00
Emily Rohrbough 79ea453764 chore(v12): merge develop into release/12.0.0 (#24705)
Co-authored-by: amehta265 <65267668+amehta265@users.noreply.github.com>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: mattvCypress <mattv@cypress.io>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
Co-authored-by: Jordan <jordan@jpdesigning.com>
Co-authored-by: Adam Stone <adams@cypress.io>
2022-11-18 16:02:31 -06:00
Jordan ed90b14d4f refactor: move linting to each lib to enable caching (#24424) 2022-11-17 17:31:19 +10:00
Emily Rohrbough 8d85c80a36 feat: add warned command state to use for recreated sessions (#24592)
Co-authored-by: Bill Glesias <bglesias@gmail.com>
2022-11-16 11:00:26 -06:00
Chris Breiding e4be9697bd Merge branch 'develop' into merge-develop-v12-2022-11-14-take-2 2022-11-14 13:57:38 -05:00
Mark Noonan 191552322c feat: in-app information about new major versions (#24541) 2022-11-04 16:25:38 -04:00
Bill Glesias 6055af37b0 Merge branch 'develop' of github.com:cypress-io/cypress into release/12.0.0 2022-11-02 10:27:39 -04:00
Matt Schile 69873ae988 chore: remove experimentalSessionAndOrigin flag (#24340)
BREAKING CHANGE: removed experimentalSessionAndOrigin flag. testIsolation defaults to strict
2022-10-24 08:49:13 -06:00
Matt Henkes 382e0b525d fix: detect chrome browser process and tab crashes to no longer hang in CI (#24338)
* 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>
2022-10-21 15:10:26 -05:00
Mark Noonan eaa1de7ff7 feat: add logic for "cypress-triggered events" (#24101)
Co-authored-by: Zachary Williams <ZachJW34@gmail.com>
2022-10-06 13:38:50 -04:00
Emily Rohrbough 4004d851b9 Merge branch 'develop' into cache-sessions-server 2022-09-16 10:35:12 -05:00
Stokes Player 314a0b2e0d feat: add cohorts for A/B testing in Specs List Banners (#23735) 2022-09-15 22:20:30 -04:00
Emily Rohrbough 821150517d Merge branch 'develop' into cache-sessions-server
# Conflicts:
#	packages/app/src/runner/event-manager.ts
#	packages/runner/src/studio/studio-recorder.js
#	packages/types/src/driver.ts
2022-09-14 11:49:59 -05:00
Zach Bloomquist 566a1a208c feat: gate WebKit behind experimentalWebKitSupport in prod (#23711) 2022-09-13 01:56:13 +00:00
Zach Bloomquist dc9e9dc62c chore(webkit): add video recording (#23579) 2022-09-06 17:12:13 +00:00
Zach Bloomquist bcd7548d74 refactor: move more of video capture into browser automations (#23587) 2022-08-31 18:55:28 +00:00
Emily Rohrbough f4a2baf806 clean up 2022-08-29 17:27:21 -05:00
Lachlan Miller 72b8a65e78 feat: Cypress Studio for Cypress 10 (#23544)
* 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>
2022-08-30 07:45:06 +10:00
Emily Rohrbough 192ae6ce75 no ci 2022-08-29 16:16:18 -05:00
Zach Bloomquist 3c2fea216b chore(server): convert remaining browsers code to typescript (#23556) 2022-08-29 19:47:05 +00:00
Emily Rohrbough 835d337103 round 1 2022-08-29 13:31:09 -05:00
Zach Bloomquist bd0d38f352 chore(server): convert modes/run to typescript (#23536)
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
2022-08-25 17:20:53 +00:00
Zachary Williams 7ddcc96388 chore: update typescript (#23523)
* chore: update typescript

* use String()

Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>

* use String()

Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>

* use String()

Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>

Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
2022-08-25 09:31:02 +10:00
Mike Plummer 741254803f feat: ACI Notification Banners (#23256) 2022-08-16 17:05:09 -05:00
Zach Bloomquist 4580330763 chore: WebKit support (development-only) (#15533) 2022-08-15 22:53:37 +00:00
Emily Rohrbough 0729a6833b feat: add testIsolation option and support describe-only overrides (#23040)
Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: Matt Henkes <mjhenkes@gmail.com>
2022-08-12 11:56:39 -05:00
Tyler Biethman 6d3b60acce chore: adding granular Firefox browser validation (#23164)
* chore: render FF 101 and 102 as unsupported on Windows

* Updating specs

* Little refactor

* Adding a few more specs

* Moving browsers to launcher

* Adding a few more specs

* Removing exports that no longer exist

* Few more tests

* Apply suggestions from code review for more specific warning message

Co-authored-by: Zach Bloomquist <git@chary.us>

* Update packages/launcher/lib/detect.ts

Co-authored-by: Ryan Manuel <ryanm@cypress.io>

Co-authored-by: Zach Bloomquist <git@chary.us>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
2022-08-11 09:51:27 -05:00
Mark Noonan 3d98f98136 fix: save spec filter term (#22755) 2022-08-09 12:44:35 -04:00
Bill Glesias 2612219501 feat: add modify obstructive user agent code for electron to strip el… (#22958)
* feat: add modify obstructive user agent code for electron to strip electron and cypress out of the UA string.

* fix user agent destructuring error within unit tests

* remove explicit CDP command and opt for _setUserAgent. add test to not override passed in user agent via config

* add get user agent method to electron and update tests

* move user agent override in electron under experimentalModifyObstructiveThirdPartyCode over experimentalSessionAndOrigin

* move position of setting user agent to browser launch, hopefully fixing issues in CI with parallelization between parent/child processes

* update stale documentation and remove no longer necessary stub of getUserAgent

* add user agent to get user agent debug log

Co-authored-by: Matt Schile <mschile@gmail.com>
2022-07-29 22:46:27 -04:00
Emily Rohrbough 85ee714217 chore(server): clean up server code (#23002)
* remove dead code

* looking a little closer, runAllSpecsInSameBrowserSession is not used and default browser was already set to electron
2022-07-29 16:30:40 +10:00
Hugo Alliaume f512f75ceb fix(config): allow "additionalIgnorePattern" to be an array of strings (#22826)
* fix(config): allow "additionalIgnorePattern" to be an array of string

Also set default value to "[]", to prevent issue when running E2E tests.

* chore(test): set "additionalIgnorePattern: undefined" for Cypress-in-Cypress config

* chore: update snapshots

* chore: update types for additionalIgnorePattern

Co-authored-by: Lachlan Miller <lachlan.miller.1990@outlook.com>
2022-07-21 11:19:06 +10:00
Muaz Othman 4726ea90a9 feat: Display Cypress Dashboard metrics in the Specs Explorer (#21250)
Co-authored-by: Muaz Othman <muazweb@gmail.com>
Co-authored-by: Tim Griesser <tgriesser10@gmail.com>
Co-authored-by: Mike Plummer <mikep@cypress.io>
Co-authored-by: Peter Stakoun <peter@stakoun.com>
Co-authored-by: Mike Plummer <mike-plummer@users.noreply.github.com>
Co-authored-by: Zachary Williams <ZachJW34@gmail.com>
2022-06-27 17:37:36 -05:00
Muaz Othman 0a6391f7f4 fix: Spec List: Added tooltips to git icons created/modified (#21536) 2022-05-27 11:15:17 -05:00