Commit Graph

6419 Commits

Author SHA1 Message Date
Chris Breiding
a0cfed5044 fix: "bypass" proxying network requests from extra browser tabs/windows (#28188)
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
Co-authored-by: Matt Schile <mschile@cypress.io>
2023-11-02 13:55:13 -04:00
Carolina Urrea
3967b4801a fix: update visibility check with overflow: hidden and element on the edge (#27586)
Co-authored-by: Chris Breiding <chrisbreiding@users.noreply.github.com>
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Emily Rohrbough <emilyrohrbough@yahoo.com>
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
2023-10-31 13:39:29 -05:00
Chris Breiding
6aafb528dd chore: extract Target.attachedToTarget and Target.targetDestroyed handlers into own methods (#28179) 2023-10-31 10:48:45 -04:00
Cacie Prins
7defccfe45 chore: increase timeout for experimental retries test (#28163) 2023-10-27 10:35:00 -05:00
Bill Glesias
201e9f366e feat: experimental retries (#27930)
* chore: set up feature/test-burn-in feature branch

* feat: add burnIn Configuration option (currently a no-op) (#27377)

* feat: add the burnIn Configuration to the config package. Option
currently is a no-op

* chore: make burn in experimental

* chore: set experimentalBurnIn to false by default

* feat: add new experimental retries configuration (#27412)

* feat: implement the experimental retries configuration options to pair
with test burn in

* [run ci]

* fix cache invalidation [run ci]

* fix snapshot added in v13 for module api to include test burn in experimentalflag

* chore: fix merge conflict

* chore: add burnInTestAction capability (#27768)

* add burnInTestAction capability

* feat: add burn in capability for cloud

* chore: fix snapshot for record_spec

* feat: implement experimental retries (#27826)

* chore: format the retries/runner snapshot files to make diff easier

* feat: implement experimentalRetries strategies 'detect-flake-and-pass-on-threshold' and 'detect-flake-but-always-fail'. This should not be a breaking change, though it does modify mocha and the test object even when the experiment is not configured. This is to exercise the system and make sure things still work as expected even when we go GA. Test updates will follow in following commits.

* chore: update snapshots from system tests and cy-in-cy tests that now have the cypress test metadata property _cypressTestStatusInfo. tests have been added in the fail-with-[before|after]each specs to visually see the suite being skipped when developing.

* chore: add cy-in-cy tests to verify reporter behavior for pass/fail tests, as well as new mocha snapshots to verify attempts. New tests were needed for this as the 'retries' option in testConfigOverrides currently is and will be invalid for experiment and will function as an override. tests run in the cy-in-cy tests are using globally configured experimentalRetries for the given tested project, which showcases the different behavior between attempts/retries and pass/fail status.

* chore: add unit test like driver test to verify the test object in mocha is decorated/handled properly in calculateTestStatus

* chore: add sanity system tests to verify console reporter output for experimental retries logic. Currently there is a bug in the reporter where the logged status doesnt wait for the aftereach to complete, which impacts the total exitCode and printed status.

* fix: aftereach console output. make sure to fail the test in the appropriate spot in runner.ts and not prematurely, which in turn updates the snapshots for cy-in-cy as the fail event comes later."

* chore: address comments from code review

* fix: make sure hook failures print outer status + attempts when the error is the hook itself.

* chore: improve types within calculateTestStatus inside mocha.ts

* Revert "feat: add burnIn Configuration option (currently a no-op) (#27377)"

This reverts commit c428443079.

* Revert "chore: add burnInTestAction capability (#27768)"

This reverts commit ae3df1a505.

* chore: run snapshot and binary jobs against experimental retries feature branch

* chore: add changelog entry (wip)

* Revert "fix snapshot added in v13 for module api to include test burn in experimentalflag"

This reverts commit bb5046c91e.

* Fix system tests

* Clear CircleCI cache

* Normalize retries config for test execution

* Fixed some unit tests

* update snapshots for newer test metadata

* Fix cy-in-cy snapshots

* update snapshots

* bump cache version

* chore: ensure legacy retry overrides work; reject exp. retries overrides (#28045)

* update changelog

* flip if statement in experimental retries option validation

* refactor invalid experimental retry override for more useful error msg

* revert testConfigOverrides snapshot

* update snapshots for test override sys test

* Update packages/config/src/validation.ts

Co-authored-by: Chris Breiding <chrisbreiding@users.noreply.github.com>

* succinct changelog entry; links to docs for details

* testConfigOverride system test snapshots

* Update .github/workflows/update_v8_snapshot_cache.yml

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

* Update cli/CHANGELOG.md

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

* Update packages/driver/src/cypress.ts

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

* updating cache-version

* improve typescript usage when appending experimental retry options to experiments in Experimenets.vue

* Revert "improve typescript usage when appending experimental retry options to experiments in Experimenets.vue"

This reverts commit b459aba882.

* refactor test config override validation for experimental retry subkeys

* account for error throw differences in browsers in system tests

* bump circle cache

* bump circle cache again

---------

Co-authored-by: astone123 <adams@cypress.io>
Co-authored-by: mabela416 <mabel@cypress.io>
Co-authored-by: Muaz Othman <muaz@cypress.io>
Co-authored-by: Muaz Othman <muazweb@gmail.com>
Co-authored-by: Cacie Prins <cacie@cypress.io>
Co-authored-by: Cacie Prins <cacieprins@users.noreply.github.com>
Co-authored-by: Chris Breiding <chrisbreiding@users.noreply.github.com>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
Co-authored-by: Matthew Schile <mschile@cypress.io>
2023-10-26 14:06:14 -04:00
Ryan Manuel
80cc83d0aa chore: fix test flake with shared workers and correlating on failures (#28132)
Co-authored-by: Cacie Prins <cacieprins@users.noreply.github.com>
2023-10-26 09:17:33 -05:00
Ryan Manuel
15f730007f fix: issue with service worker attachments (#28147)
Co-authored-by: Emily Rohrbough <emilyrohrbough@users.noreply.github.com>
2023-10-26 09:16:20 -05:00
Matt Schile
058f3a80b0 test: fix spec search in windows (#28130) 2023-10-24 12:54:22 -05:00
Ryan Manuel
dbd213926c fix: issue with proxy correlations and web/shared workers (#28105) 2023-10-23 22:26:21 -05:00
Ryan Manuel
d9606868c5 fix: fix failures and correlation in proxy (#28094) 2023-10-23 16:08:05 -05:00
janlengyel
74a06c53b8 fix: ignore dash, underscore and space in search (#28012)
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Matt Schile <mschile@gmail.com>
2023-10-23 15:32:39 -04:00
Ryan Manuel
ff89ffa2b2 fix: proxy issues with service workers and clean up at end of specs (#28060) 2023-10-17 19:53:49 -05:00
Ryan Manuel
ca6d30d7bf fix: force gzip when no accept encoding header is sent and use identity if gzip is not sent (#28026)
Co-authored-by: Chris Breiding <chrisbreiding@users.noreply.github.com>
2023-10-17 13:52:37 -05:00
Ryan Manuel
c8c5b51d82 dependency: packages/data-context/package.json to reduce vulnerabilities (#28063)
Co-authored-by: snyk-bot <snyk-bot@snyk.io>
Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
2023-10-16 14:16:48 -05:00
Dave Kasper
6373930c8e chore: release 13.3.1 (#28022)
* chore: release 13.3.1

* bump cypress-example-kitchensink version

* fix changelog

* use consistent punctuation in changelog

---------

Co-authored-by: astone123 <adams@cypress.io>
2023-10-11 16:18:56 -05:00
Ryan Manuel
4e720c8ebf chore: fix types breaking due to exposing too much inside of protocol.ts (#28035) 2023-10-11 15:27:27 -05:00
Ryan Manuel
5efecf9a4a chore: fix problem with single tab run mode introduced by #27786 (#28032)
* chore: fix problem introduced by <pr>

* Update packages/server/lib/modes/run.ts
2023-10-11 12:36:21 -05:00
Jim Hays
34c8b1f884 refactor: Spellcheck (#27964)
Co-authored-by: Matthew Schile <mschile@cypress.io>
2023-10-11 10:06:10 -04:00
Ryan Manuel
078dc0a81e fix: support proxy correlation timeout notifications and additional proxy data (#27976) 2023-10-10 16:19:37 -05:00
young-robot
b3b7d3ba65 chore: fix component tests in contributor flow (#27883)
Co-authored-by: Adam Stone-Lord <adams@cypress.io>
Co-authored-by: Dave Kasper <dave.m.kasper@gmail.com>
2023-10-10 14:06:38 -04:00
Ryan Manuel
9f3d5b4565 fix: build better-sqlite3 (#27968)
* fix: build better-sqlite3

* fix syntax

* fix syntax

* fix syntax

* fix syntax

* fix syntax

* fix syntax

* fix syntax

* fix syntax

* better sqlite3

* publish pre-release

* Update CHANGELOG.md

* add comment

* try to cache

* try and speed things up even more

* fixes

* improve caching

* improve caching

* improve caching

* fix build

* fix build

* Update scripts/binary/build.ts

Co-authored-by: Adam Stone-Lord <adams@cypress.io>

* Update centos7-builder.Dockerfile

Co-authored-by: Adam Stone-Lord <adams@cypress.io>

* Update centos7-builder.Dockerfile

Co-authored-by: Adam Stone-Lord <adams@cypress.io>

* Update CHANGELOG.md

* fix keys

* Update cli/CHANGELOG.md

* Update cli/CHANGELOG.md

* Revert "fix keys"

This reverts commit b1383d4432.

* fix keys

* fix build

* optimize

* bump cache

* optimize

* bump cache

* blank

* blank

* Update scripts/binary/trigger-publish-binary-pipeline.js

* Update cli/CHANGELOG.md

* Update CHANGELOG.md

* Update cli/CHANGELOG.md

---------

Co-authored-by: Adam Stone-Lord <adams@cypress.io>
2023-10-09 14:23:56 -05:00
Cacie Prins
1a6f87922c fix: report results correctly when the browser crashes mid-test (#27786)
* report correct number of failures if browser crashes in the middle of a test suite

* report failure correctly when browser crashes during test

* refactor crash handling

* correct exit option check, clean up debug

* exit on success if exit option !== false

* use default stats when reporter stats are unavailable

* fix error messaging

* move reporter types to an intermediate .ts file, to be combined with reporter.js when migrated

* debug tab close test in ci

* move debug env from pkg to ci yml

* set debug env in spec

* fix pckg

* adds some logging to cri-client

* remove event emit logging from project-base

* revert snapshot for tab close system test

* fixes console output for no exit on success

* changelog

* changelog wsp

* cleanup

* clean up tests

* refactor to more straightforward control flow

* rm export for unused type

* correct tab close snapshot for ci

* new system test for mid-test config crash

* update snapshots
2023-10-06 14:45:33 -04:00
Adam Stone-Lord
4c11731ee1 chore: optimize task execution (#27848)
* Revert "chore: simplify build script (#27547)"

This reverts commit 0a86ec686e.

* Revert "chore: upgrade lerna to 6, cache build step (#26913)"

This reverts commit 9e60aeba8f.

* [run ci]

* chore: upgrade lerna to 6, cache build step (#26913)

* chore: update build-npm-modules script

* chore: update build-npm-modules script

* chore: update build-npm-modules script

* chore: update build-npm-modules script

* chore: update lerna to 6

* [run ci]

* try caching build step

* we can't clean without building after

* add dependencies on scripts for npm packages

* update commands

* add config for data-context build step

* fix output configurations for npm packages, add gitignores

* revert changes to config and data-context build steps

* fix outputs

* run with cache

* fix outputs for cli

* actually fix outputs

* test with cache

---------

Co-authored-by: astone123 <adams@cypress.io>

* chore: simplify build script (#27547)

* chore: simplify build script

* update CI workflows

* fix workflows

* empty commit because Percy weirdness

* chore: add driver, reporter, config as implicit dependencies for runner package (#27559)

* run all workflows on branch

* chore: parallelize test-binary-against-recipes CI step (#27570)

* chore: fix some easy circular dependencies in dep graph (#27612)

* chore: remove gulp tasks from postinstall (#27616)

* empty commit

* chore: minor improvements to node_modules_install (#27647)

* chore: fix cypress:open and dev scripts

* run with cache [run ci]

* exclude mochaawesome assets from .yarnclean [run ci]

* bump cache again [run ci]

* run cached [run ci]

* chore: do not cache cli build step [run ci]

* update workflow command and docs for build-cli [run ci]

* fix commands that use scope [run ci]

* use different branch for publish repo [run ci]

* percy weirdness? [run ci]

* fix postbuild cli script [run ci]

* try to remove typescript from production binary [run ci]

* fix circular dependency [run ci]

* try removing ts from node_modules [run ci]

* remove typescript resolution [run ci]

* remove redundant target scripts

* update to lerna scoped commands

* remove unneeded yarn in lerna command

* try to fix Electron install in Windows workflow

---------

Co-authored-by: Jordan <jordan@jpdesigning.com>
Co-authored-by: Dave Kasper <dave.m.kasper@gmail.com>
2023-10-04 12:25:00 -05:00
Adam Stone-Lord
c57316013a fix: yield waited responses in the order that they occured (#27806)
* fix: yield waited requests in the order that they occured

* fix firefox

* add changelog entry

* add test case for sorting

* add multi-alias test

* preserve alias order when sorting via requestId

* removed value parse code

* messy but more robust

* add comment, rename variable

* reduce alias count to account for webkit

* collate new tests under existing describe

---------

Co-authored-by: young-robot <adam.stonelord+fake@gmail.com>
Co-authored-by: David Kasper <dave.m.kasper@gmail.com>
2023-10-03 15:16:21 -05:00
Cacie Prins
9ca788327b fix: set a crashed flag when cri detects a crash (#27909)
* fix: set a crashed flag when cri detects a crash, throw on send if crashed

* changelog update

* Update cli/CHANGELOG.md

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

* update snapshots

* updates changelog, updates crash handling snapshot

* electron tab crash snapshot fix

* electron tab crash snapshot...

* add wsp to eol on snapshot - maybe the diff?

* more whitespace?

* update snapshots again

* fix screenshot res in electron tab crash snap

* updates changelog

---------

Co-authored-by: Ryan Manuel <ryanm@cypress.io>
2023-10-02 15:03:19 -04:00
Bill Glesias
2c9a3178c1 chore: update the packages/electron README to update the electron upd… (#27941)
* chore: update the packages/electron README to update the electron updating process as it has changed/evolved since written

* chore: update images used in binary system tests

* Update packages/electron/README.md

Co-authored-by: Chris Breiding <chrisbreiding@users.noreply.github.com>

---------

Co-authored-by: Chris Breiding <chrisbreiding@users.noreply.github.com>
2023-09-29 16:24:54 -04:00
renovate[bot]
fa55a430aa chore: update electron 🌟 (#27940)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-09-29 14:55:46 -04:00
Cacie Prins
654e501547 chore: add manifest.v3 extension for chrome (#27888)
* scaffolding

* retrofit extension pkg to build both v2 and v3 extensions

* update unit tests
2023-09-28 12:05:19 -04:00
Ryan Manuel
8da1e5c92f fix: correlate prerequests in order instead of reverse order (#27892) 2023-09-27 16:37:16 -05:00
Roy Wang
b114dced98 fix: statusCode allow 999 (#27853)
https://lodash.com/docs/#inRange `end` is exclusive, so it needs to be set to 1000 to allow status code 999 to be included (as per documented).

Co-authored-by: Adam Stone-Lord <adams@cypress.io>
Co-authored-by: Ben M <benm@cypress.io>
2023-09-25 15:22:49 -04:00
renovate[bot]
b1efbaf92b chore(deps): update dependency systeminformation to v5.21.7 [security] (#27874)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ben M <benm@cypress.io>
2023-09-25 13:18:33 -04:00
Ryan Manuel
ce17a4446e fix: issue with font flooding (#27860) 2023-09-21 15:08:57 -05:00
Ryan Manuel
311001b7d1 chore: improve logging on retried upload failures (#27847) 2023-09-20 16:23:42 -05:00
github-actions[bot]
381b505b6f chore: Update Chrome (stable) to 117.0.5938.88 and Chrome (beta) to 118.0.5993.11 (#26966) 2023-09-19 15:36:42 -06:00
Matt Henkes
343097b9d2 chore: use docker compose to run cypress. (#27831) 2023-09-19 08:04:03 -05:00
Dave Kasper
0e239bf210 feat(app): Update Runs page visuals to new layout and card design (#27770)
* basic card visuals, working on click

* visual tweaks and i18n

* match other i18n

* redo duration format, should make common too

* basic debug, needs validation of relevant run

* refactor and move files

* working top level state

* working grouping, needs subcomponent

* switch click target

* remove dayjs change

* fix current commit

* revise commit for message

* working view runs button

* fix type check

* fix tests

* fix integration tests

* remove old test

* add layout

* add component test for new layout and cleanup

* add count check

* standardize cy tags

* revise count test

* fix typos

* fix padding

* start wrapping

* happy wrap, next trunc

* responsive if wonky

* clean up and titles

* magic resize, needs tests per breakpoint

* standardize the rollup

* working default rollup

* rollup spacing tweaks

* center elements

* update tests for multiple viewports

* add missing breakpoint tests

* fix debug tests for status and badge

* remove unneeded check

* add functional component

* fix check_ts

* update container test

* add changelog

* add tooltip, needs aria label and external link update

* fix overflow

* fix avatar and add aria label to count summary

* change to external href

* remove popup sizing

* add tests

* add missing data cy

* fix runcard test

* Truncate result count

* make truncate style conditional

* match design truncate position

* adddress PR comments

* chore:updating styles (#27798)

* add tooltip content tests and skeletons

* clean up tooltip validation

* fix runs selector

* Update packages/app/src/runs/RunsSkeletonRow.vue

Co-authored-by: Stokes Player <stokes@cypress.io>

* Update packages/app/src/runs/RunTagCount.vue

Co-authored-by: Stokes Player <stokes@cypress.io>

* Update packages/app/src/runs/RunsSkeleton.vue

Co-authored-by: Stokes Player <stokes@cypress.io>

* Update packages/app/src/runs/RunTagCount.vue

Co-authored-by: Stokes Player <stokes@cypress.io>

* Update packages/app/src/runs/RunsSkeleton.vue

Co-authored-by: Stokes Player <stokes@cypress.io>

* Update packages/app/src/runs/RunsSkeletonRow.vue

Co-authored-by: Stokes Player <stokes@cypress.io>

* Update packages/app/src/runs/RunTagCount.vue

Co-authored-by: Stokes Player <stokes@cypress.io>

* Update packages/app/src/runs/RunTagCount.vue

Co-authored-by: Stokes Player <stokes@cypress.io>

* remove redundant shrink-1s

* more shrinks

---------

Co-authored-by: Stokes Player <stokes@cypress.io>
2023-09-14 16:35:12 -05:00
Matt Schile
f8b4c59daa fix: update net stubbing to not intercept requests sent to dev server (#27788) 2023-09-12 08:22:33 -06:00
Ryan Manuel
a1161c90e0 fix: hanging on basic auth requests in chromium browsers (#27781) 2023-09-11 12:23:05 -05:00
Ryan Manuel
70248ab9c0 fix: prerequest correlation for various retried and cached requests (#27771) 2023-09-10 21:41:40 -05:00
Bill Glesias
b85dd752f2 dependency: update to electron 25 and node 18 (#27715)
* feat: update to electron 25 and bump node dependencies. need to remove
custom docker image

* chore: update node versions to 18+ [run ci]

* chore: bump @types/node from v16 to v18 and bump the typescript supported CLI version from 3.9 to 4.4

* update mock-fs to 5.2.0 to fix BigInt issue (see https://github.com/tschaub/mock-fs/releases/tag/v5.1.4) [run ci]

* chore: update electron integrity check to pass create binary job

* chore: fix issues with achrinza/node-ipc not yet having node 18 engine support (only up to 17 by patching from 9.2.2 to 9.2.5 as seen in https://github.com/achrinza/node-ipc/pull/38. vue/cli-service is not maintained and we should migrate these over to vue create at some point in the near future to get rid of these resolutions

* allow for TLSv1 tests to work with node 18 as the express server running node 18 with tlsv1 needs to allow legacy ciphers

* chore: update snyk workflows to use node 18

* chore: add changelog

* update timeout

* more cleanup during binary build

* bump cache and run ci. include ignore engines for rwa and get rid of
16.16 image references

* chore: update FF tests to 115 as serialization now works with errors and click events do not get fired on buttons being typed into

* chore: don't error when symlink already exists

* chore: fix serialization test for newer versions of firefox

* chore: fix CI config

* chore: fix chrome system tests to work with chrome 114. updates mostly caused by bugs in screen height in chrome. see https://bugs.chromium.org/p/chromium/issues/detail?id=1416398

* chore: test binary against vite update in RWA

* remove wait for RWA as it shouldnt be needed for vite. link example recipes update to node 18

chore: remove commented out code

* chore: print message when DISABLE_SNAPSHOT_REQUIRE is set

* chore: clean out unneeded dependencies always

* chore: remove trailing space

* fix: propagate click events for enter and typing on firefox 106 or later

* chore: fix changelog failures

* fix: correctly simulate click events for buttons on keyup and space type  in Firefox versions greater than 91 and simulate click for buttons on enter in Firefox versions greater than or equal to 106

* chore: add documentation to type to clarify firefox synthetic events

* chore: update protocol snapshot as order or log messages seems to have changed

* update comments

* sort commandLogChanged events for protocol

* chore: remove PR ids from CRA and CER as the PRs are merged into develop

---------

Co-authored-by: Ryan Manuel <ryanm@cypress.io>
Co-authored-by: Chris Breiding <chrisbreiding@gmail.com>
Co-authored-by: Matt Schile <mschile@cypress.io>
2023-09-07 15:26:09 -04:00
Evan Liu
07b1c3bb49 chore: make indent consistent (#27757) 2023-09-06 12:23:18 -04:00
Ryan Manuel
d8b48211c0 fix: ensure that fatal protocol errors are only limited to the spec they occurred on (#27720) 2023-08-31 11:01:50 -05:00
renovate[bot]
0396b9b17e fix(deps): update dependency plist to v3.1.0 🌟 (#27710)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Ben M <benm@cypress.io>
2023-08-31 09:25:50 -04:00
Bill Glesias
f1a1c97fcf fix: fix release date to be august 29th and not august 30th (#27711) 2023-08-30 17:35:05 -05:00
Ryan Manuel
7072f3c168 fix: make CDP errors non fatal (#27709) 2023-08-30 14:47:11 -05:00
Chris Breiding
cbf266c05e fix: Include run.stats.skipped in results (#27695)
Co-authored-by: Matt Schile <mschile@cypress.io>
2023-08-30 15:30:23 -04:00
Dave Kasper
05afa1eaa5 feat: Add status icon to Sidebar Runs Page (#27672)
* basic structure and stubs for tests

* think this works, needs validation and icon

* partially working, needs i18n cleanup for failure count

* working with tests and i18n

* update to latest status icon

* fix debug integration tests

* removing ts-expect-error for isWindows util to match 13 branch

* add change log

* whatever

* speculate on release

* fix typo in template
2023-08-29 18:38:17 -05:00
Ryan Manuel
0a0eebd67d Merge branch 'develop' into fix/config-port-overriding-devserver 2023-08-28 20:32:23 -05:00
Ryan Manuel
ca7bad2e16 fix last flake 2023-08-28 19:48:06 -05:00
Ryan Manuel
9a0481f745 fix last flake 2023-08-28 19:33:23 -05:00