Skip to content

Conversation

@MikeMcC399
Copy link
Collaborator

Situation

Currently CI tests running in the circle.yml pipeline provide the following coverage:

Command Coverage
npm run eslint lints the plugins' source code
npm test uses Jest to run the ESLint Rule Tester against current rules
npm run test:legacy uses Jest and the end-of-life ESLint v8 Rule Tester against legacy rules

Tests showing eslint-plugin-cypress running in typical end-user configurations are missing. This represents a test coverage gap.

If there are any problems with the package definition and content provided by package.json or with the examples in the README document this would not be picked up by the current tests.

Change

  1. Add a Cypress test-project configured with the default set of full scaffolded Cypress tests.
  2. Add jobs and workflows to:
    • build a package tarball corresponding to the published package on the npm registry
    • test different typical ESLint configuration files against the scaffolded tests

Non-goal

End-user testing of legacy (deprecated non-flat) configurations.

@cypress-app-bot
Copy link

@MikeMcC399
Copy link
Collaborator Author

@MikeMcC399 MikeMcC399 marked this pull request as ready for review April 1, 2025 08:17
Copy link
Member

@jennifer-shehane jennifer-shehane left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There tends to be issues sometimes hitting the https://jsonplaceholder.cypress.io URL, because of how we rate limit those requests. Not a blocker, just bringing it up if that ends up becoming a pattern to watch for.

@MikeMcC399
Copy link
Collaborator Author

MikeMcC399 commented Apr 1, 2025

@jennifer-shehane

Thanks for updating the "Cypress App" term!

There tends to be issues sometimes hitting the https://jsonplaceholder.cypress.io URL, because of how we rate limit those requests. Not a blocker, just bringing it up if that ends up becoming a pattern to watch for.

Actually this will not be a possible pattern here because CircleCI doesn't run Cypress. It only runs ESLint against the Cypress scaffolded project code. Cypress is only used in development to scaffold the project, then it is uninstalled. In CircleCI Cypress is not installed at all.

There are instructions in the README for running Cypress locally and that is the only situation where https://jsonplaceholder.cypress.io would come into play.

So I think we're good. 🙂

@MikeMcC399

This comment was marked as resolved.

@jennifer-shehane jennifer-shehane merged commit 83af80b into cypress-io:master Apr 8, 2025
10 checks passed
@MikeMcC399 MikeMcC399 deleted the add/project-test branch April 8, 2025 14:48
@jennifer-shehane
Copy link
Member

🎉 This PR is included in version 4.2.1 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants