test(e2e): port markdown_rendering.feature to playwright#73633
Draft
carl-codeorg wants to merge 1 commit into
Draft
test(e2e): port markdown_rendering.feature to playwright#73633carl-codeorg wants to merge 1 commit into
carl-codeorg wants to merge 1 commit into
Conversation
…ring.feature to playwright Port 2 scenarios from dashboard/test/ui/features/foundations/markdown_rendering.feature. Green under the 5x/all-browser stress gate; original Cucumber feature tagged @playwright so the Cucumber suite skips it. Source: dashboard/test/ui/features/foundations/markdown_rendering.feature
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Ports the
Visiting an external markdown level with details tagscenario frommarkdown_rendering.featuretomarkdown-rendering.spec.ts.The test covers dashboard's "external" level type, which renders authored markdown — including raw HTML like
<details>/<summary>— directly into the level body viaSafeMarkdown. It:<details id="cool-list">starts closed.<summary>tag and confirms the details element opens (open attribute set).This exercises SafeMarkdown's raw-HTML passthrough for interactive elements, not just text rendering — a regression here would mean authored
<details>/collapsible content silently stops working across every course that uses it.What's not ported
The feature's second scenario (
Viewing a level with blockly embedded in instructions, tagged@eyes) asserts pixel-level visual parity against Applitools-approved baselines for Blockly embedded in level instructions. There's no equivalent visual-regression harness in this Playwright suite (playwright.config.ts'sscreenshot: 'only-on-failure'is a failure artifact, not a baseline-diff mechanism), so porting just the navigate + lab-ready wait would silently drop the scenario's actual assertion. This gap is documented in a comment at the top of the spec file; the scenario stays in Cucumber/Applitools for now.Migration mechanics
@playwrightso the Cucumber suite skips the ported scenario, avoiding duplicate coverage.MarkdownLevelpage object (markdown-level.ts) and extendsLessonLevelPage(lesson-level-page.ts) with a sharednavigateToLevelhelper for lab-level URLs.Links
JIRA
Testing story
Deployment notes
Privacy and security