Migrate playwright to euri-dsl module and update dependencies, configurations, and package structures.#6
Merged
Conversation
…nfigurations, and package structures.
…aywrightVersionTest` to align with `euri-dsl` module.
…just build configurations for `euri-dsl`.
… related configurations for Playwright support. Optimize resource management and build structure. Add `theatre` module.
…nused imports in `BrowserLaunchConfig`. Update tests to reflect new `waitUntil` approach.
…eration`) and `theatre` module. Refactor runtime DSL implementations for improved configurability and annotation usage.
… Update `DragToOperation` and remove extensive legacy tests from `PageScopeTest`.
… to BrowserContextScope Merge origin/main into feature branch. Key changes: - Upgrade konstellation-dsl 2.0.10->2.0.12 and konstellation-meta-dsl 1.0.14->1.0.15 - Add Kotlin enum wrappers (Role, BrowserColorScheme, PageLoadState, ScreenshotType, WaitUntil) in euri-dsl/enums package, replacing direct Playwright enum usage - Add @InjectDslMethod annotations to BrowserContextScope - Update LocatorScope and GetByRoleOperation to use Role enum instead of AriaRole - Resolve modify/delete conflicts for playwright/ files moved to euri-dsl/ - Note: @InjectDslMethod cannot be added to LocatorScope or PlaywrightRuntime because they use @GeneratedDsl with references to KSP-generated types, causing circular dependency errors during KSP processing https://claude.ai/code/session_01TmGtF6ihVxhMtjSqcNu4r1
…slMethod annotations The generated LocatorScopeDslBuilder was unused. Switching to @EuriDsl bypasses KSP processing, allowing @InjectDslMethod on all methods without circular dependency errors from KSP-generated types. https://claude.ai/code/session_01TmGtF6ihVxhMtjSqcNu4r1
Contributor
Code Coverage - Root
|
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
The getByRole method mirrors Playwright's API which requires many optional parameters for ARIA role matching. https://claude.ai/code/session_01TmGtF6ihVxhMtjSqcNu4r1
Cover PlaywrightVersion version comparison logic, enum conversions, locator operation options, config mappings, and LocatorScope actions (dragTo, setInputFiles, and/or filters). https://claude.ai/code/session_01TmGtF6ihVxhMtjSqcNu4r1
… 99.7% line coverage Exercise operation default constructor values (bypassing DslBuilder), null childScope branches for GetBy*/Selector/Filter operations, optional block parameters in LocatorScope, and additional version comparison cases. https://claude.ai/code/session_01TmGtF6ihVxhMtjSqcNu4r1
violabs-josh
commented
Apr 11, 2026
| @GeneratedDsl | ||
| data class NavigationConfig( | ||
| val url: String, | ||
| @DefaultValue("LOAD") val waitUntil: String = WaitUntilState.LOAD.name, |
Collaborator
Author
There was a problem hiding this comment.
change enum part of the library
violabs-josh
commented
Apr 11, 2026
|
|
||
| @GeneratedDsl | ||
| data class ScreenshotConfig( | ||
| @DefaultValue("PNG") val type: String = "PNG", |
Collaborator
Author
There was a problem hiding this comment.
Is this used?
…enable PageScope/FrameScope/PlaywrightRuntime - Replace string-based enum fields with proper Kotlin enums using @DefaultEnum annotation on BrowserContextConfig.colorScheme, NavigationConfig.waitUntil, and ScreenshotConfig.type - Make PlaywrightConfig<T> and LocatorOperation functional interfaces (SAM) - Uncomment and redesign PageScope with @EuriDsl/@InjectDslMethod, adapting locator methods to work with LocatorScope(MutableList<LocatorOperation>) - Uncomment and redesign FrameScope with @EuriDsl/@InjectDslMethod - Uncomment BrowserContextScope.newPage and PlaywrightRuntime page/execute - Add comprehensive tests for PageScope, FrameScope, and PlaywrightRuntime - Update detekt baseline for new scope classes https://claude.ai/code/session_01TmGtF6ihVxhMtjSqcNu4r1
|
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.



No description provided.