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

Timed out retrying: Maximum call stack exceeded when typing into Salesforce Lightning Components #6707

Closed
jennifer-shehane opened this issue Mar 12, 2020 · 5 comments · Fixed by #6708
Labels
pkg/driver This is due to an issue in the packages/driver directory type: bug

Comments

@jennifer-shehane
Copy link
Member

jennifer-shehane commented Mar 12, 2020

Current behavior:

When attempting to type into certain elements from Salesforce lightning components, an error is thrown like below:

CypressError: Timed out retrying: Maximum call stack size exceeded

Screen Shot 2020-03-12 at 12 43 29 PM

Similar to previous issue that was resolved in 4.1.0 when doing visibility checks on elements - likely we are naively doing another check during type that is not considering the shape of elements generated in Salesforce Lightning Web Components #4373

Desired behavior:

Should not throw Max call stack error

Test code to reproduce

Pending

Versions

Cypress 4.1.0

@jennifer-shehane jennifer-shehane added type: bug pkg/driver This is due to an issue in the packages/driver directory stage: investigating Someone from Cypress is looking into this labels Mar 12, 2020
@jennifer-shehane
Copy link
Member Author

I was able to track this Max call stack being thrown from the getFirstStickyPositionParent method. Similarly to the previous visibility check, it is iterating over the element without checking if $el[0] exists first. So, goes into an infinite loop.

https://github.com/cypress-io/cypress/blob/develop/packages/driver/src/dom/elements.ts#L917:L917

Likely there are other places where this check is insufficient still, so I'll take a look at some other instances and hopefully extract out this check into a broader method of 'checkExistence' and/or 'checkIfHtmlBodyOrDocument'.

Now comes the hard part of isolating a failing test case for the PR.

@cypress-bot cypress-bot bot added stage: work in progress There is an open PR for this issue [WIP] and removed stage: investigating Someone from Cypress is looking into this labels Mar 12, 2020
@jennifer-shehane
Copy link
Member Author

Getting past the max call stack error, there is a separate error trying to type into a textarea in Salesforce Lightning Components.

Screen Shot 2020-03-12 at 1 52 12 PM

@mksjha
Copy link

mksjha commented Mar 13, 2020

Hi Jennifer,

Thanks for your help in opening and addressing this issue related to #4373.

We will test it again after your fix and let you know our feedback.

@cypress-bot cypress-bot bot added stage: needs review The PR code is done & tested, needs review and removed stage: work in progress There is an open PR for this issue [WIP] labels Mar 13, 2020
@cypress-bot
Copy link
Contributor

cypress-bot bot commented Mar 16, 2020

The code for this is done in cypress-io/cypress#6708, but has yet to be released.
We'll update this issue and reference the changelog when it's released.

@cypress-bot cypress-bot bot added stage: pending release There is a closed PR for this issue and removed stage: needs review The PR code is done & tested, needs review labels Mar 16, 2020
@cypress-bot
Copy link
Contributor

cypress-bot bot commented Mar 16, 2020

Released in 4.2.0.

This comment thread has been locked. If you are still experiencing this issue after upgrading to
Cypress v4.2.0, please open a new issue.

@cypress-bot cypress-bot bot removed the stage: pending release There is a closed PR for this issue label Mar 16, 2020
@cypress-bot cypress-bot bot locked as resolved and limited conversation to collaborators Mar 16, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
pkg/driver This is due to an issue in the packages/driver directory type: bug
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants