Repository navigation
test(swiftui): add UI adapter and accessibility conformance for A2UISwiftUI - #3587
gspencergoog wants to merge 2 commits into
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces several accessibility enhancements, lifecycle management APIs, and validation support to the SwiftUI adapter, along with a comprehensive suite of adapter and accessibility conformance tests. The review feedback highlights a critical runtime casting issue in Surface.swift that bypasses user activation checks, suggests simplifying the catalog lookup logic, recommends checking for explicit disabled states in A2UIButton, and advises against using #filePath for loading test fixtures to ensure compatibility with sandboxed environments.
23c9660 to
735b27c
Compare
f2b7622 to
6e8e62e
Compare
735b27c to
96aed2f
Compare
6e8e62e to
010a25e
Compare
96aed2f to
b9b2b0e
Compare
010a25e to
272ad43
Compare
272ad43 to
ad6b9c3
Compare
b9b2b0e to
65758c8
Compare
|
Consolidated into #3583, which now carries the shared suites and the adapter and accessibility conformance work for all five renderers (web, Flutter, SwiftUI). The commits and the resolved review threads from this PR are preserved there. 🤖 Agent-generated |
…r conformance types
Summary
Add declarative UI framework adapter conformance (
conformance/core/adapter_conformance.yaml) and accessibility conformance (conformance/core/accessibility.yaml) coverage forA2UISwiftUI(swift/swiftui).What Changed
Surface.swift,A2UIAccessibilityModifier.swift,A2UITextField.swift, andA2UIButton.swiftinswift/swiftui/Sources/to supportNodeResolverview tree resolution (resolved,pending,unknown-type,cyclic) withUNKNOWN_COMPONENT_TYPEandCYCLIC_REFERENCEerror emission, user-activation gating on local function invocation,ValidationResulterrorvswarningcontrol disabling, andunmount()subscription cleanup.YamstoA2UISwiftUITestsdependencies in rootPackage.swiftand createdswift/swiftui/Tests/A2UISwiftUITests/AdapterConformanceTests.swiftexecuting all 6 cases ofconformance/core/accessibility.yamland all 13 cases ofconformance/core/adapter_conformance.yaml.Testing
swift package describe && swift build --target A2UIJSONTestsswiftc -parseacross all modified and new.swiftfiles (fullA2UISwiftUITestsrun on macOS CI viaswift_build_and_test.yml).🤖 Agent-generated