refactor: expose PageObject component page objects publicly (#2582)
## Summary
- Updated PageObject class to expose component page objects
(chatActions, previewPanel, codeEditor, etc.) as public properties
instead of private
- Updated all e2e spec files to use explicit component access pattern
(e.g., `po.chatActions.sendPrompt()` instead of `po.sendPrompt()`)
- Makes the test code more modular and explicit about which component is
being used
## Test plan
- [x] All 784 unit tests pass
- [x] TypeScript type checking passes
- [x] Linting passes
- [ ] E2E tests should be run via CI
🤖 Generated with [Claude Code](https://claude.com/claude-code)
<!-- devin-review-badge-begin -->
---
<a href="https://app.devin.ai/review/dyad-sh/dyad/pull/2582"
target="_blank">
<picture>
<source media="(prefers-color-scheme: dark)"
srcset="https://static.devin.ai/assets/gh-open-in-devin-review-dark.svg?v=1">
<img
src="https://static.devin.ai/assets/gh-open-in-devin-review-light.svg?v=1"
alt="Open with Devin">
</picture>
</a>
<!-- devin-review-badge-end -->
<!-- This is an auto-generated description by cubic. -->
---
## Summary by cubic
Refactored the e2e PageObject to expose component objects publicly and
added delegated helpers (sendPrompt, importApp) for shorter calls. Tests
now use explicit component access with shorthand for common actions,
making code clearer and easier to maintain.
- **Refactors**
- Exposed component objects on PageObject (chatActions, previewPanel,
codeEditor, modelPicker, settings, navigation, toastNotifications,
appManagement, securityReview, agentConsent, githubConnector).
- Added PageObject.sendPrompt() and PageObject.importApp() delegates;
updated specs to use them for brevity.
- Removed monolithic wrappers; no functional app changes—test-only
refactor.
- **Migration**
- Use component methods directly (e.g.,
po.previewPanel.selectPreviewMode(), po.settings.recordSettings(),
po.toastNotifications.waitForToastWithText()).
- Prefer po.sendPrompt() and po.importApp() for common actions; replace
old PageObject methods with component or delegate equivalents.
<sup>Written for commit 15cf1998d7f9b06e0fe6e53f8cc36f4f3c42e630.
Summary will update on new commits.</sup>
<!-- End of auto-generated description by cubic. -->
---------
Co-authored-by:
Will Chen <willchen90@gmail.com>
Co-authored-by:
Claude Opus 4.5 <noreply@anthropic.com>
正在显示
差异被折叠。
请
注册
或者
登录
后发表评论