Skip to content

test: add iOS ShakeDevice and PerformTouchID coverage - #1129

Merged
Dor-bl merged 1 commit into
appium:mainfrom
Dor-bl:test/ios-shake-touchid-tests
Sep 18, 2026
Merged

Dor-bl merged 1 commit into
appium:mainfrom
Dor-bl:test/ios-shake-touchid-tests

Conversation

@Dor-bl

@Dor-bl Dor-bl commented Sep 17, 2026

Copy link
Copy Markdown
Collaborator

PR title

test: add iOS ShakeDevice and PerformTouchID coverage

Related issue

Closes # n/a

List of changes

  • Add test/integration/IOS/DeviceInteractionTest.cs covering IOSDriver.ShakeDevice() and IOSDriver.PerformTouchID(bool), neither of which had any existing test coverage.
  • PerformTouchIdTest first enrolls Touch ID on the simulator via mobile: enrollBiometric (required before sendBiometricMatch has anything to match against), then exercises both the match and no-match paths.

Types of changes

  • New test coverage (non-breaking change that adds tests for existing, previously untested functionality)

Tests

  • Integration tests

How they run: Picked up by the existing FullyQualifiedName~IOS CI filter (tagged [Category("iOS")]), no CI changes needed.

Documentation

  • Not applicable (no user-facing behaviour change, e.g. tests, CI or maintenance only)

Details

Verified locally against a real booted iOS 26.0 "iPhone 17" simulator with a local Appium server + XCUITest driver: both tests pass. Note for anyone running this locally without CI's LOCAL_PREBUILT_WDA env var set — a cold WebDriverAgent build can take long enough that the client-side HTTP request drops before the server responds (looks like a connection failure, isn't). Grab a prebuilt WDA first: appium driver run xcuitest download-wda-sim --platform=ios --outdir=<dir> and set LOCAL_PREBUILT_WDA to the extracted .app path.

IOSDriver.ShakeDevice() and PerformTouchID(bool) had no test coverage.
Add DeviceInteractionTest with a Touch ID enrollment step so the
biometric match/no-match commands can actually execute on a simulator.
@github-actions github-actions Bot added the Test label Sep 17, 2026
@Dor-bl
Dor-bl marked this pull request as ready for review September 17, 2026 19:31
@Dor-bl
Dor-bl requested review from KazuCocoa and a lite review from Copilot September 17, 2026 19:31

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

No unresolved issues were identified.

Pull request overview

Adds iOS integration coverage for device shaking and Touch ID simulation.

Changes:

  • Tests IOSDriver.ShakeDevice().
  • Enrolls biometrics and tests matching and non-matching Touch ID flows.
File summaries
File Description
test/integration/IOS/DeviceInteractionTest.cs Adds iOS device interaction integration tests.
Review details
  • Files reviewed: 1/1 changed files
  • Comments generated: 0
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@KazuCocoa KazuCocoa left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did it work? I mean not the response wise, but actually if shake worked

@Dor-bl

Dor-bl commented Sep 18, 2026

Copy link
Copy Markdown
Collaborator Author

Checked — typed text into a field, called ShakeDevice(), and iOS's built-in "Undo Typing?" alert appeared. So it's a real shake motion event, not just a no-op API call. The test itself only asserts DoesNotThrow though — happy to strengthen it to assert on that alert if useful.

@Dor-bl

Dor-bl commented Sep 18, 2026

Copy link
Copy Markdown
Collaborator Author

Did it work? I mean not the response wise, but actually if shake worked

@Dor-bl Dor-bl closed this Sep 18, 2026
@Dor-bl Dor-bl reopened this Sep 18, 2026
@Dor-bl
Dor-bl merged commit 6ab6034 into appium:main Sep 18, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants