Skip to content

🧪 test: add unit tests for orientation setter - #13

Open
Dor-bl wants to merge 10 commits into
masterfrom
test-orientation-7851551434230814572
Open

Dor-bl wants to merge 10 commits into
masterfrom
test-orientation-7851551434230814572

Conversation

@Dor-bl

@Dor-bl Dor-bl commented Aug 10, 2026

Copy link
Copy Markdown
Owner

🎯 What: The orientation setter lacked test coverage in the Appium Python Client, and also silently skipped invalid orientation values instead of raising an error.
📊 Coverage: The new tests in test/unit/webdriver/webdriver_test.py cover:

  • Getting the orientation
  • Setting valid orientations ('LANDSCAPE', 'PORTRAIT')
  • Setting invalid orientations (e.g. 'INVALID'), checking that a WebDriverException is correctly raised
    Result: Test coverage for the orientation property is complete, and the underlying implementation is more robust as it throws a proper error for incorrect orientations.

PR created automatically by Jules for task 7851551434230814572 started by @Dor-bl

@google-labs-jules

Copy link
Copy Markdown

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

@Dor-bl
Dor-bl force-pushed the test-orientation-7851551434230814572 branch from 948ed82 to 5aa05c9 Compare September 5, 2026 06:59
@Dor-bl
Dor-bl force-pushed the test-orientation-7851551434230814572 branch from 5aa05c9 to dbbdb5d Compare September 5, 2026 07:38
@Dor-bl
Dor-bl requested a lite review from Copilot September 12, 2026 22:19

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟢 Approval recommended

The change adds focused test coverage; the remaining description wording issue is a minor nit.

Pull request overview

Adds unit test coverage for the existing WebDriver orientation getter and setter behavior.

Changes:

  • Tests retrieving and setting valid orientations.
  • Verifies invalid orientations raise WebDriverException.
File summaries
File Summary
test/unit/webdriver/webdriver_test.py Adds orientation property tests.
Review details
  • Files reviewed: 1/1 changed files
  • Comments generated: 1
  • Review effort level: Lite

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

driver = android_w3c_driver()

with pytest.raises(WebDriverException) as excinfo:
driver.orientation = 'INVALID'
Dor-bl and others added 9 commits September 14, 2026 13:38
This patch introduces unit tests for the `orientation` setter and getter
in `test/unit/webdriver/webdriver_test.py`. It tests the happy paths
('LANDSCAPE' and 'PORTRAIT') as well as the error handling for invalid
values. Additionally, it modifies the actual orientation setter code in
`appium/webdriver/webdriver.py` to raise a `WebDriverException` when
an invalid value is passed rather than silently skipping the command,
improving reliability and code correctness.
This patch introduces unit tests for the `orientation` setter and getter
in `test/unit/webdriver/webdriver_test.py`. It tests the happy paths
('LANDSCAPE' and 'PORTRAIT') as well as the error handling for invalid
values. Additionally, it modifies the actual orientation setter code in
`appium/webdriver/webdriver.py` to raise a `WebDriverException` when
an invalid value is passed rather than silently skipping the command,
improving reliability and code correctness.

It also updates the flutter app asset download urls in
`.github/workflows/functional-test.yml` since the `latest` tag is
pointing to a release without the required artifacts.
This patch introduces unit tests for the `orientation` setter and getter
in `test/unit/webdriver/webdriver_test.py`. It tests the happy paths
('LANDSCAPE' and 'PORTRAIT') as well as the error handling for invalid
values. Additionally, it modifies the actual orientation setter code in
`appium/webdriver/webdriver.py` to raise a `WebDriverException` when
an invalid value is passed rather than silently skipping the command,
improving reliability and code correctness.

It also updates the flutter app asset download urls in
`.github/workflows/functional-test.yml` since the `latest` tag is
pointing to a release without the required artifacts.
The `appium-flutter-server` repo released version `0.0.34`, which
seems to have removed the assets uploaded to the releases page for
`app-debug.apk` and `ios.zip` that were present in `0.0.33` and older.
This caused the CI pipeline to fail because the `latest` tag redirected
to the `0.0.34` release, and curling the asset download URLs resulted in
a 404.

This commit pins the URLs in the `.github/workflows/functional-test.yml`
file to use the `0.0.32` release explicitly, so the assets can be
successfully downloaded and the CI can pass.
The `ios_test` in the CI pipeline started timing out due to inadequate
timeouts set for the driver creation.

This commit increases the `wda_launch_timeout` in the iOS helper
options to 240000ms. It also increases the `client_config.timeout` to
1200 seconds and adds `options.new_command_timeout = 600` to prevent
the tests from timing out prematurely during the simulator boot and
safari initialization.
The `ios_test` in the CI pipeline started timing out due to inadequate
timeouts set for the driver creation.

This commit increases the `wda_launch_timeout` in the iOS helper
options to 240000ms. It also increases the `client_config.timeout` to
1200 seconds and adds `options.new_command_timeout = 1200` to prevent
the tests from timing out prematurely during the simulator boot and
safari initialization.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants