Skip to content

Conversation

@ghost
Copy link

@ghost ghost commented Aug 26, 2025

Description of Change

This pull request introduces a dedicated test lane and emulator configuration for running SafeAreaEdges UI tests on Android API 36, specifically using a Pixel 9 device skin. It also updates the test infrastructure and test code to support and validate this new environment. The most important changes are grouped below:

Pipeline and Emulator Configuration:

  • Added a dedicated Pixel 9 configuration for Android API 36 in eng/Versions.props to support SafeAreaEdges testing.
  • Updated the UI test pipeline (eng/pipelines/common/ui-tests.yml) to include Android API 36 and created a new test stage specifically for SafeAreaEdges tests using the Pixel 9 emulator. [1] [2] [3]
  • Enhanced test step parameters and environment handling in ui-tests-steps.yml to accept and use a deviceType (e.g., Pixel 9). [1] [2]

Test Code and Category Updates:

  • Added SafeAreaEdges to UITestCategories and temporarily changed the category of BoxView_CornerRadiusWithColor to ensure it runs in the new pipeline. [1] [2]

Test Logic and Validation:

  • Updated UITest.cs to recognize and validate the new Pixel 9 / API 36 emulator configuration, including screen size and density checks, and adjusted screenshot cropping logic for the new device. [1] [2] [3]

@dotnet-policy-service dotnet-policy-service bot added community ✨ Community Contribution partner/syncfusion Issues / PR's with Syncfusion collaboration labels Aug 26, 2025
@ghost ghost added area-testing Unit tests, device tests testing-infrastructure Issue relating to testing infrastructure labels Aug 26, 2025
@jsuarezruiz
Copy link
Contributor

/azp run MAUI-UITests-public

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@ghost ghost marked this pull request as ready for review August 28, 2025 08:23
Copilot AI review requested due to automatic review settings August 28, 2025 08:23
@ghost ghost self-requested a review as a code owner August 28, 2025 08:23
@ghost ghost requested review from StephaneDelcroix and jsuarezruiz August 28, 2025 08:23
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR adds dedicated testing infrastructure for SafeAreaEdges functionality on Android API 36 using a Pixel 9 emulator configuration. The changes enable isolated testing of safe area behavior with proper device-specific screen dimensions and UI adjustments.

Key changes:

  • Added SafeAreaEdges test category and pipeline configuration for Android API 36
  • Integrated Pixel 9 emulator support with device-specific screen handling
  • Updated test infrastructure to accommodate different Android device configurations

Reviewed Changes

Copilot reviewed 6 out of 7 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
UITestCategories.cs Adds SafeAreaEdges test category constant
UITest.cs Updates device validation and screenshot cropping for API 36/Pixel 9
BoxViewFeatureTests.cs Temporarily changes test category to SafeAreaEdges for pipeline validation
ui-tests.yml Adds API 36 support and dedicated SafeAreaEdges test stage
ui-tests-steps.yml Adds deviceType parameter for Android device skin configuration
Versions.props Adds Pixel 9 device configuration for API 36 emulator

@jsuarezruiz
Copy link
Contributor

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@jsuarezruiz
Copy link
Contributor

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@PureWeen PureWeen added this to the .NET 10.0-rc2 milestone Aug 29, 2025
@PureWeen PureWeen added the p/0 Current heighest priority issues that we are targeting for a release. label Aug 29, 2025
@jfversluis jfversluis requested a review from PureWeen September 2, 2025 08:38
@jfversluis
Copy link
Member

@anandhan-rajagopal I see relevant failing builds. Can you have a look?

@PureWeen PureWeen moved this from Todo to Approved in MAUI SDK Ongoing Sep 3, 2025
@PureWeen PureWeen moved this from Approved to Ready To Review in MAUI SDK Ongoing Sep 3, 2025
Copy link
Member

@mattleibow mattleibow left a comment

Choose a reason for hiding this comment

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

LGTM. Not going to approve just in case we accidentally merge the edited test. If we have changes on another PR and this has to go in first, we can set up an empty test for now and that PR can delete. This way we start all the things.

Comment on lines -301 to +306
TestDevice.Android => 60,
TestDevice.Android => environmentName == "android-notch-36" ? 95 : 60,
Copy link
Member

Choose a reason for hiding this comment

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

It might be beneficial to refactor this section in net11 for better readability. But for now, this is OK to just get the ball rolling.

@mattleibow mattleibow moved this from Ready To Review to Approved in MAUI SDK Ongoing Sep 11, 2025
Copy link
Member

@rmarinho rmarinho left a comment

Choose a reason for hiding this comment

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

Seems something is missing ? Maybe on cake how it creates the emulator first ?

Resolved tool to path /usr/local/lib/android/sdk/cmdline-tools/latest/bin/avdmanager
Executing: /usr/local/lib/android/sdk/cmdline-tools/latest/bin/avdmanager delete avd -n Emulator_36
Error: There is no Android Virtual Device named 'Emulator_36'.
null
Error: System.Exception: The emulator did not finish booting in time.
 

@github-project-automation github-project-automation bot moved this from Approved to Changes Requested in MAUI SDK Ongoing Sep 11, 2025
Copy link
Member

@PureWeen PureWeen left a comment

Choose a reason for hiding this comment

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

@anandhan-rajagopal can you move the yaml changes on this pr to a separate pr. it would be nice to have the code working locally for now and not get bogged down with ci yet

@PureWeen
Copy link
Member

/rebase

@PureWeen
Copy link
Member

/azp run MAUI-UITests-public

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@PureWeen
Copy link
Member

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@ghost ghost closed this by deleting the head repository Sep 17, 2025
@PureWeen PureWeen moved this from Changes Requested to Done in MAUI SDK Ongoing Sep 18, 2025
@github-actions github-actions bot locked and limited conversation to collaborators Oct 17, 2025
This pull request was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-testing Unit tests, device tests community ✨ Community Contribution p/0 Current heighest priority issues that we are targeting for a release. partner/syncfusion Issues / PR's with Syncfusion collaboration testing-infrastructure Issue relating to testing infrastructure

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

6 participants