fix failing test#2471
Conversation
WalkthroughAdds a new allowed banner text ("Get the Deal") to the upgrade-link detection logic in the Cypress test so it follows the existing upgrade navigation path. No other logic or exports changed. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested reviewers
Tip 🔌 Remote MCP (Model Context Protocol) integration is now available!Pro plan users can now connect to remote MCP servers from the Integrations page. Connect with popular remote MCPs such as Notion and Linear to add more context to your reviews and chats. ✨ Finishing Touches
🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR/Issue comments)Type Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (4)
tests/cypress/e2e/Forms/formPageDataValidation.cy.js (4)
22-23: Harden banner-text detection (case-insensitive + more robust regex).Current checks are case-sensitive and can flake if marketing adjusts capitalization/spacing. Minimal tweak below keeps your new string while reducing brittleness.
- if (href && (text.includes('upgrading to PRO') || text.includes( 'Get 60% Off Pro!' ) || text.includes('Get the Deal') || text.match(/GET \d+% OFF|SAVE \d+%/))) { + const lower = text.toLowerCase(); + if (href && (lower.includes('upgrading to pro') || lower.includes('get 60% off pro!') || lower.includes('get the deal') || /(?:get\s+\d+%\s+off|save\s+\d+%)/i.test(text))) {
17-21: Avoid multi-element pitfalls: operate on a single link.cy.get() may match multiple anchors; $el.text() would concatenate text and attr('href') comes from the first element only. Explicitly narrow to the first match and assert href presence to prevent accidental false positives/negatives.
- cy.get('.frm-upgrade-bar .frm-upgrade-bar-inner > a, #frm_sale_banner a:not(.dismiss)') - .then(($el) => { + cy.get('.frm-upgrade-bar .frm-upgrade-bar-inner > a, #frm_sale_banner a:not(.dismiss)') + .first() + .should('have.attr', 'href') + .then(($el) => {
25-27: Trim heading text before comparison.Minor resiliency improvement against stray whitespace or newlines around h1.
- cy.get('h1').should(($h1) => { - const headingText = $h1.text(); + cy.get('h1').should(($h1) => { + const headingText = $h1.text().trim();
37-37: Improve failure diagnostics with href echo.Including href in the thrown error accelerates triage when banner copy or link targets change.
- throw new Error(`Unexpected banner text or missing href: "${text}"`); + throw new Error(`Unexpected banner or missing href: text="${text}", href="${href}"`);
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
tests/cypress/e2e/Forms/formPageDataValidation.cy.js(1 hunks)
🧰 Additional context used
🧬 Code graph analysis (1)
tests/cypress/e2e/Forms/formPageDataValidation.cy.js (1)
js/formidable_admin.js (1)
href(10881-10881)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (11)
- GitHub Check: PHP 7.4 tests in WP trunk
- GitHub Check: PHP 8 tests in WP trunk
- GitHub Check: Run PHP Syntax inspection (8.3)
- GitHub Check: Cypress
- GitHub Check: PHP 8 tests in WP trunk
- GitHub Check: PHP 7.4 tests in WP trunk
- GitHub Check: Cypress
- GitHub Check: Cypress
- GitHub Check: PHP 8 tests in WP trunk
- GitHub Check: PHP 7.4 tests in WP trunk
- GitHub Check: Run PHP Syntax inspection (8.3)
🔇 Additional comments (1)
tests/cypress/e2e/Forms/formPageDataValidation.cy.js (1)
22-22: LGTM: allowlist extended to include “Get the Deal”.This aligns with the PR goal to fix the failing test caused by new banner copy. Change is scoped and safe.
|
@Crabcyborg |
Crabcyborg
left a comment
There was a problem hiding this comment.
Thank you @lauramekaj1!
🙌
No description provided.