-
Notifications
You must be signed in to change notification settings - Fork 25
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
#8581: More page editor poms #8748
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #8748 +/- ##
==========================================
- Coverage 74.24% 74.24% -0.01%
==========================================
Files 1332 1332
Lines 40817 40825 +8
Branches 7634 7635 +1
==========================================
+ Hits 30306 30311 +5
- Misses 10511 10514 +3 ☔ View full report in Codecov by Sentry. |
Playwright test resultsDetails Open report ↗︎ Flaky testsedge › tests/deployments/deploymentActivation.spec.ts › activate a deployed mod in the extension console Skipped testschrome › tests/runtime/googleSheetsIntegration.spec.ts › can activate a google spreadsheet mod with config options |
|
||
// Decorator used for functions that modify the state of the mod. | ||
// This is used to wait for Redux to update before continuing. | ||
export function ModifiesModState<T>( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The idea for using this as a decorator rather than as a helper function is that it's easier to remember to annotate which methods are modifying the mod state at the top of the function, and also serves to communicate their intent a bit more clearly to devs (plus I was curious and wanted to try writing a decorator myself)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like it
No loom links were found in the first post. Please add one there if you'd like to it to appear on Slack. Do not edit this comment manually. |
What does this PR do?
This PR introduces several new classes in the
end-to-end-tests/pageObjects/pageEditor
directory, includingbrickActionsPanel.ts
,brickConfigurationPanel.ts
,dataPanel.ts
,modEditorPane.ts
, andutils.ts
. These classes provide methods for interacting with different parts of the page editor in the PixieBrix extension.The PR also modifies the
pageEditorPage.ts
class to use these new classes and their methods. The changes include replacing direct interactions with the page editor (such as filling in fields) with calls to the new methods, and adding aModifiesModState
decorator to methods that modify the state of the mod.In addition, the PR updates several test files to use the new methods in
pageEditorPage.ts
.The PR is part of a larger effort to provide a more structured and modular way to interact with the page editor, which should make the tests easier to write and maintain.
Closes #8581