BL-16818 Tables 5/6: the end-to-end suite - #8329
Open
hatton wants to merge 2 commits into
Open
Conversation
Fifth of six PRs splitting BL-16818. Thirty-eight Playwright tests across three files, plus the helper layer they need. Pure test code: every production hook they lean on was reviewed in the PR before this one. tables-core covers making a table and editing it, tables-extended the harder ways to use one (a table in a cell, a video in a cell, undo across CKEditor and the table's own history, zoom, resizing, copying a page into another book), and tables-gating what a person below the Pro tier, or with the experiment off, can and cannot do with a book that already has a table. That last file is the one worth reading closely: a subscriber's book has to stay translatable by someone with no subscription. helpers/tables.ts is the bulk of the helper work. The rest is small additions to the existing helpers, and the notes in AUTOMATION-DEBT.md for what this suite could not reach: a table's own menus can only be found by their English words, nothing in the markup marks the boundary between two rows, and a picture in a cell leaves a drawing surface that swallows presses. Merging this on top of master rather than the original branch changed a few things. The suite keeps master's canvas element helpers, its Change Layout wait, its build-staleness check and its general nextFileToChoose hook, all of which came after the tables work started and are better than what that work had. It keeps master's kEnterpriseSubscriptionCode rather than minting a second test subscription code. The Alphabet Book page and its three tests are not here; they are BL-16823.
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.
Fifth of six stacked PRs splitting #8315. Base is
BL-16818-e2e-hooks(#8328).Thirty-eight Playwright tests across three files, plus the helper layer they need. Pure test code: every production hook they lean on was reviewed in #8328, so this can be skimmed.
tables-core.spec.ts— making a table and editing it.tables-extended.spec.ts— the harder ways to use one: a table in a cell, a video in a cell, undo across CKEditor and the table's own history, zoom, resizing, copying a page into another book.tables-gating.spec.ts— what a person below the Pro tier, or with the experiment off, can and cannot do with a book that already has a table. This is the file worth reading closely: a subscriber's book has to stay translatable by someone with no subscription.helpers/tables.tsis the bulk of the helper work. The rest is small additions to the existing helpers, plusAUTOMATION-DEBT.mdentries for what this suite could not reach — a table's own menus can only be found by their English words, nothing in the markup marks the boundary between two rows, and a picture in a cell leaves a drawing surface that swallows presses.What the rebase onto master changed
The tables work started before several things landed on
master, and where the two disagreedmasterwon:data-subscription-gatedhandling,openCanvasToolthrough the page's own canvas, the palette-item drag)launchBloom.tse2e/nextFileToChoose, in place of the branch's video-only endpointkEnterpriseSubscriptionCode(Test-727011-1339), rather than the second test subscription code the branch had mintedKept from the branch:
dragCanvasElementSide,getPaletteItemsOffered,getCanvasRect,enableTool, the camera-permission grant before the Sign Language tool opens, and the backdrop fallback when closing a canvas element menu.The Alphabet Book page and its three tests are not here; they are BL-16823.
Checks
tsc --noEmitclean, Prettier clean, andplaywright test --listreports 38 tests in the three files. The suite itself has not been run end to end on this branch — it needs the whole stack merged and a built Bloom, which is the last item in the split plan.[Claude Opus 5 following a prompt from Hatton]
Devin review
This change is