Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add experimentalStudio flag back #23506

Merged
merged 8 commits into from
Aug 23, 2022

Conversation

lmiller1990
Copy link
Contributor

@lmiller1990 lmiller1990 commented Aug 23, 2022

NOTE targeting feat/studio-cypress-10 feature branch, not develop.

  • Add back experimentalStudio flag.
  • Only works for E2E for now.
  • You can set it globally, too - this way, anyone on 9.x waiting for Studio before updating to Cypress 10 can upgrade and continue w/ Studio as-in, without changing their config.
  • CT throws an informative error.

@cypress-bot
Copy link
Contributor

cypress-bot bot commented Aug 23, 2022

Thanks for taking the time to open a PR!

@@ -2866,10 +2866,15 @@ declare namespace Cypress {
*/
experimentalModifyObstructiveThirdPartyCode: boolean
/**
* Generate and save commands directly to your test suite by interacting with your app as an end user would.
Copy link
Contributor Author

@lmiller1990 lmiller1990 Aug 23, 2022

Choose a reason for hiding this comment

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

This description was incorrect, drive-by fix.

@cypress
Copy link

cypress bot commented Aug 23, 2022



Test summary

38906 0 3993 0Flakiness 1


Run details

Project cypress
Status Passed
Commit baf02fc
Started Aug 23, 2022 2:52 PM
Ended Aug 23, 2022 3:07 PM
Duration 14:15 💡
OS Linux Debian - 11.3
Browser Multiple

View run in Cypress Dashboard ➡️


Flakiness

cypress/e2e/commands/xhr.cy.js Flakiness
1 src/cy/commands/xhr > abort > aborts xhrs currently in flight

This comment has been generated by cypress-bot as a result of this project's GitHub integration settings. You can manage this integration in this project's settings in the Cypress Dashboard

@lmiller1990 lmiller1990 requested review from astone123 and a team August 23, 2022 10:26
@lmiller1990 lmiller1990 marked this pull request as ready for review August 23, 2022 10:26
@lmiller1990 lmiller1990 mentioned this pull request Aug 23, 2022
4 tasks
Copy link
Contributor

@astone123 astone123 left a comment

Choose a reason for hiding this comment

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

Looks good to me - one thing that we need to fix is to make it so that the studio icons don't show up under CT when the config option is placed at the config root. Right now, if you have experimentalStudio: true at your config root, if you open up CT you'll see the wand icons in the test runner.

I'll fix this in #23337

@mike-plummer
Copy link
Contributor

@lmiller1990 Not sure whether this would be in scope for this PR or is being tackled elsewhere - looks like there's missing i18n strings under the Project Settings view:

Screen Shot 2022-08-23 at 9 23 19 AM

@astone123
Copy link
Contributor

@lmiller1990 Not sure whether this would be in scope for this PR or is being tackled elsewhere - looks like there's missing i18n strings under the Project Settings view:

Screen Shot 2022-08-23 at 9 23 19 AM

Nice catch, Mike 👍🏻 I just added them

@astone123 astone123 merged commit 8d0e0c8 into feat/studio-cypress-10 Aug 23, 2022
@astone123 astone123 deleted the lmiller/studio-flag-23338 branch August 23, 2022 15:10
@lmiller1990
Copy link
Contributor Author

lmiller1990 commented Aug 23, 2022

Thanks for the catch @mike-plummer and thanks for adding that @astone123.

Good point on the studio icons for CT when experimentalStudio is root - I'll leave it to you @astone123 in #23337 as suggested 👍

lmiller1990 added a commit that referenced this pull request Aug 29, 2022
* 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>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants