bahmutov / local-cypress

Use Cypress without global objects
https://glebbahmutov.com/blog/local-cypress/
33 stars 3 forks source link

chore(deps): update dependency cypress to v7 #16

Closed renovate[bot] closed 3 years ago

renovate[bot] commented 3 years ago

WhiteSource Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
cypress 6.8.0 -> 7.0.0 age adoption passing confidence

Release Notes

cypress-io/cypress ### [`v7.0.0`](https://togithub.com/cypress-io/cypress/releases/v7.0.0) _Released 04/05/2021_ **Summary:** 🎉 Introducing the **Cypress Component Test Runner** - now in alpha. Today's release includes a brand new test runner designed to replace your Node-based component tests. Our Component Test Runner tests your components in the browser, just like a user would. And, since it runs in the browser, you get to debug your components using your favorite developer tools. Read our [Component Testing Guide](/guides/component-testing/introduction) for more details. **Breaking Changes:** ** Please read our [Migration Guide](/guides/references/migration-guide) which explains the changes in more detail and how to change your code to migrate to Cypress 7.0.** - We introduced several breaking changes to [cy.intercept()](/api/commands/intercept). See the [cy.intercept()](/api/commands/intercept) docs for full usage examples. Breaking changes: - Request handlers supplied to `cy.intercept()` are now matched starting with the most recently defined request interceptor. This allows users to override request handlers by calling `cy.intercept()` again. This matches the previous behavior that was default in `cy.route()`. Addresses [#​9302](https://togithub.com/cypress-io/cypress/issues/9302). - `cy.intercept()` now automatically parses more JSON MIME types, including 'application/vnd.api+json'. You can now remove `JSON.parse(req.body)` or `JSON.parse(res.body)` from some tests that previously required it. Addresses [#​14763](https://togithub.com/cypress-io/cypress/issues/14763). - Falsy values (with the exception of `undefined`) supplied as the body of a `StaticResponse` to `cy.intercept()` will now be JSONified and sent as the body. Previously, an empty string was sent instead. Addresses [#​15234](https://togithub.com/cypress-io/cypress/issues/15234) and [#​14205](https://togithub.com/cypress-io/cypress/issues/14205). - The `matchUrlAgainstPath` `RouteMatcher` property has been removed from `cy.intercept()`. - The "substring match" from `cy.intercept()` URL matching has been removed. Previously, a URL would match if it contained the supplied string anywhere. Now, the URL (including querystring) only matches if it is an equality match or a minimatch. - The `delay` option for StaticResponses used with `cy.intercept()` has been removed. Please go back to using the `delayMS` option. Addresses [#​15255](https://togithub.com/cypress-io/cypress/issues/15255). - `cy.route2()` was previously aliased to `cy.intercept()`. Now the alias `cy.route2()` has been removed. Please update usage of `cy.route2()` to `cy.intercept()`. Addressed in [#​14709](https://togithub.com/cypress-io/cypress/pull/14709). - Component tests have been migrated to use a dedicated test runner and are bundled differently. See the [Migration Guide](/guides/references/migration-guide#Component-Testing) for full examples on how to migrate. Addressed in [#​14479](https://togithub.com/cypress-io/cypress/pull/14479). - Component tests will not be executed when running `cypress open` or `cypress run`. Now, they need to be executed by running `cypress open-ct` or `cypress run-ct`. Addressed in [#​15701](https://togithub.com/cypress-io/cypress/pull/15701). - `experimentalComponentTesting` must be removed from yoru configuration file, `cypress.json` by default, or it will throw an error. Addressed in [#​15701](https://togithub.com/cypress-io/cypress/pull/15701). - The `file:preprocessor` event is no longer used to compile component tests. Now, a `dev-server:start` event must be registered. - Cypress now catches uncaught errors and fails the test even if the application under test has defined `window.onerror`. Addresses [#​8802](https://togithub.com/cypress-io/cypress/pull/8802). - Cypress now fails tests if there is an unhandled promise rejection in the application under test. Unhandled rejections will trigger the `uncaught:exception` event with the promise as the third argument. Addresses [#​243](https://togithub.com/cypress-io/cypress/issues/243). - Cypress now throws an error if the application under test redirects more than 20 times. The number of times allowed to redirect is configurable via the [`redirectionLimit`](guides/references/configuration#Global) config. Addresses [#​14445](https://togithub.com/cypress-io/cypress/issues/14445). - The default preprocessor now targets a more modern version of ECMAScript. Addressed in [#​15274](https://togithub.com/cypress-io/cypress/issues/15274). - We now enable [`contextIsolation`](https://www.electronjs.org/docs/tutorial/context-isolation) by default in the Electron browser. You can override this option if needed within the `before:browser:launch` API. Addressed in [#​15493](https://togithub.com/cypress-io/cypress/pull/15493). - `Cypress.moment()` has been removed. Please migrate to a different datetime formatter. See [our recipe](https://togithub.com/cypress-io/cypress-example-recipes/tree/master/examples/blogs__dayjs) for example replacements. Addresses [#​8714](https://togithub.com/cypress-io/cypress/issues/8714). - The bundled Node.js version was upgraded from `12.18.3` to `14.16.0`. This could change the behavior of code within the `pluginsFile` when using the [bundled Node.js version](guides/references/configuration#Node-version) of Cypress. Addressed in [#​15292](https://togithub.com/cypress-io/cypress/pull/15292). - Installing Cypress on your system now requires Node.js 12+. Addresses [#​9545](https://togithub.com/cypress-io/cypress/issues/9545). **Features:** - A command log entry is now displayed when there is an uncaught exception or unhandled rejection. Addresses [#​8236](https://togithub.com/cypress-io/cypress/issues/8236). - We added several features to [cy.intercept()](/api/commands/intercept). See the [cy.intercept()](/api/commands/intercept) docs for full usage examples. Addressed in [#​14543](https://togithub.com/cypress-io/cypress/pull/14543). New features: - There are new events on the req object for `cy.intercept()` including `before:response`, `response`, and `after:response`. - Response handlers (supplied via event handlers or via `req.continue(cb)`) supplied to `cy.intercept()` will be called in reverse order until `res.send` is called or until there are no more response handlers. - A new option, `middleware`, has been added to the `RouteMatcher` type. If true, the supplied request handler will be called before any non-middleware request handlers. - A new function, `req.continue(cb)`, is available on request objects yielded by `cy.intercept()`. It is functionally the same as `req.reply(cb)` - the request will stop propagating to other event handlers, will be sent outgoing, and the response will be handled by cb. - `cy.intercept()` can now be called with a new overload: `cy.intercept(url, routeMatcher, handler)`. `routeMatcher` will be merged with `url`, and the handler is required. - [`cy.visit()`](api/commands/visit) can now visit pages with `application/xhtml*` content-type. Addresses [#​15738](https://togithub.com/cypress-io/cypress/issues/15738). - You can now pass runner specific configuration in order to pass different configuration values to `component` tests versus `e2e` tests. Addressed in [#​15526](https://togithub.com/cypress-io/cypress/pull/15526). - There's a new keyboard shortcut (`ctrl/cmd + f`) to search spec files in the Test Runner based on your OS. Addresses [#​6229](https://togithub.com/cypress-io/cypress/issues/6229). - You can now create a new spec file directly from the Test Runner in the Desktop. Addressed in [#​15335](https://togithub.com/cypress-io/cypress/issues/15335). - [`cy.tick()`](api/commands/tick) now accepts a `log` option. Addresses [#​15180](https://togithub.com/cypress-io/cypress/issues/15180). - The Cypress proxy now adds a `keep-alive` header to all proxy responses. Addressed in [#​15292](https://togithub.com/cypress-io/cypress/pull/15292) - Cypress no longer forces specific `NODE_OPTIONS`. Addressed in [#​15292](https://togithub.com/cypress-io/cypress/pull/15292) **Bugfixes:** - The `response.body` of [`cy.intercept()`](api/commands/intercept) is now correct after stubbing a response using `res.send({ fixture })` in a `req.continue` callback or a `before:response` or `response` handler. Addressed in [#​14543](https://togithub.com/cypress-io/cypress/pull/14543). - Fixed an issue where only the first matching alias for a route would yield a response object on [`cy.wait()`](api/commands/wait). Fixes [#​14522](https://togithub.com/cypress-io/cypress/issues/14522). - [`.click()`](api/commands/click) will no longer fail with "coordsHistory must be at least 2 sets of coords" when specifying `{ multiple: true }`. Fixes [#​3738](https://togithub.com/cypress-io/cypress/issues/3738). - Cypress now checks visibility correctly when an element has CSS "position: sticky". Fixes [#​14938](https://togithub.com/cypress-io/cypress/issues/14938). - After selecting a project in global mode and clicking the back button, Cypress will no longer crash. Fixes [#​15089](https://togithub.com/cypress-io/cypress/issues/15089). - Errors `Refused to apply style` are gone from the console in `open-ct` during Component Testing. Addressed in [#​15661](https://togithub.com/cypress-io/cypress/issues/15661). - Some memory leaks were fixed in `@cypress/vue`. Addressed in [#​15275](https://togithub.com/cypress-io/cypress/issues/15275). **Misc:** - The types for `set-cookie` allow `string[]`, so the header's type has been changed to reflect this. Addresses [#​15419](https://togithub.com/cypress-io/cypress/pull/15419). - The type definition for [`cy.writeFile()`](api/commands/writefile) now allows 4 arguments. Addresses [#​15353](https://togithub.com/cypress-io/cypress/issues/15353). - [`.then()`](api/commands/then) will show the correct type when raw HTMLElements are provided. Addresses [#​14875](https://togithub.com/cypress-io/cypress/issues/14875) - The Cypress Studio icon now displays properly for tests with long titles. Addresses [#​15182](https://togithub.com/cypress-io/cypress/issues/15182). - There were some minor improvements made to the UI when setting up a project in the Test Runner. Addressed in [#​15665](https://togithub.com/cypress-io/cypress/pull/15665). **Dependency Updates** - Upgraded Chrome browser version used during `cypress run` and when selecting Electron browser in `cypress open` from `87` to `89`. Addressed in [#​15292](https://togithub.com/cypress-io/cypress/pull/15292). - Upgraded bundled Node.js version from `12.18.3` to `14.16.0`. Addressed in [#​15292](https://togithub.com/cypress-io/cypress/pull/15292). - Upgraded `electron` from `11.3.0` to `12.0.0`. Addressed in [#​15292](https://togithub.com/cypress-io/cypress/pull/15292).

Configuration

:date: Schedule: "after 10pm every weekday,every weekend,before 5am every weekday" in timezone America/New_York.

:vertical_traffic_light: Automerge: Enabled.

:recycle: Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

:no_bell: Ignore: Close this PR and you won't be reminded about this update again.



This PR has been generated by WhiteSource Renovate. View repository job log here.

github-actions[bot] commented 3 years ago

:tada: This PR is included in version 1.2.2 :tada:

The release is available on:

Your semantic-release bot :package::rocket: