Skip to content

Fix Android app bar inset background coloring#35601

Merged
kubaflo merged 6 commits into
dotnet:inflight/currentfrom
ne0rrmatrix:fix/35568-android-appbar-inset-background
May 27, 2026
Merged

Fix Android app bar inset background coloring#35601
kubaflo merged 6 commits into
dotnet:inflight/currentfrom
ne0rrmatrix:fix/35568-android-appbar-inset-background

Conversation

@ne0rrmatrix

Copy link
Copy Markdown

Note

Are you waiting for the changes in this PR to be merged?
It would be very helpful if you could test the resulting artifacts from this PR and let us know in a comment if this change resolves your issue. Thank you!

Fixes #35568

Summary

  • sync the Android AppBarLayout background and status bar foreground with the MAUI toolbar background
  • retry the AppBar sync after the toolbar is attached so the real native parent AppBar gets updated
  • add Android device regression tests covering the edge-to-edge top inset area for both NavigationPage and Shell

Testing

  • dotnet build src/Controls/tests/DeviceTests/Controls.DeviceTests.csproj -c Release -f net10.0-android /p:TreatWarningsAsErrors=false /p:AndroidPackageFormat=apk
  • adb -s emulator-5554 shell am instrument -w -r -e TestFilter "Category=NavigationPage" com.microsoft.maui.controls.devicetests/com.microsoft.maui.controls.devicetests.TestInstrumentation
  • adb -s emulator-5554 shell am instrument -w -r -e TestFilter "Category=Shell" com.microsoft.maui.controls.devicetests/com.microsoft.maui.controls.devicetests.TestInstrumentation

PureWeen and others added 5 commits May 21, 2026 16:04
<!-- Please let the below note in for people that find this PR -->
> [!NOTE]
> Are you waiting for the changes in this PR to be merged?
> It would be very helpful if you could [test the resulting
artifacts](https://github.com/dotnet/maui/wiki/Testing-PR-Builds) from
this PR and let us know in a comment if this change resolves your issue.
Thank you!

## What
Restrict the agentic-labeler to apply **exactly one `area-*` label** per
item, while still allowing multiple `platform/*` labels.

## Why
Backfilling the 26 items affected by the `max:1` bug (fixed in dotnet#35540)
revealed that the labeler occasionally applies multiple `area-*` labels
for ambiguous cases:

- **dotnet#35501** got both `area-layout` and `area-safearea`
- **dotnet#35490** got both `area-navigation` and `area-controls-tabbedpage`

The intended behavior is exactly one best-fit `area-*` per item (a
label-quota distinction not expressible via
`safe-outputs.add-labels.max:` — that field counts total labels, not
labels per prefix). The fix has to live in the agent's instructions.

## Changes

### `.github/skills/agentic-labeler/SKILL.md`
- Scope section: "Exactly one `area-*`" / "One or more `platform/*`".
- Area rules section: renamed heading, changed "pick one or more" →
"apply exactly one".
- New **tie-breaking heuristics** for the area-* selection:
- Specific control beats generic area (`area-controls-tabbedpage` over
`area-navigation`)
  - Sub-area beats parent area (`area-safearea` over `area-layout`)
  - Subject-matter focus beats incidental touch
  - When genuinely tied, prefer the user-visible feature
- Mixed-PR rule clarified: infra-primary PRs get only
`area-infrastructure` (no second product area).

### `.github/workflows/agentic-labeler.md`
- Added explicit reinforcement in the workflow prompt: "Apply exactly
one `area-*` label … and one or more `platform/*` labels".
- Fixed two stale `max: 1` comments left over from dotnet#35540 (the cap is
now `max: 10`).

### `.github/workflows/agentic-labeler.lock.yml`
- Regenerated via `gh aw compile`. Diff is frontmatter-hash + heredoc
rotations only — no semantic change to the compiled config.

## Validation
- Reviewed all 21 existing eval scenarios in `tests/eval.yaml` — none
assert multiple `area-*` labels, so no test updates needed.
- The `max: 10` cap in `safe-outputs` is preserved as a blast-radius
safeguard (one area + several platforms still fit comfortably).

## Follow-ups (not in this PR)
If accuracy of the "one area" rule drops below ~95% in eval runs,
consider adding a deterministic post-step that strips extra `area-*`
labels per a known precedence list (Option B from the design
discussion).

Co-authored-by: bot <bot@test>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
## Description

Extends the `maui-copilot` DevDiv pipeline (pipeline 27723) with a
3-stage architecture that runs real UI tests on platform-pool agents and
reports results directly in the AI summary PR comment.

### Pipeline Workflow

```
┌─────────────────────────────────────────────────────────┐
│  Stage 1: ReviewPR                                      │
│                                                         │
│  STEP 1: Branch Setup (checkout + cherry-pick PR)       │
│  STEP 2: Detect UI Test Categories                      │
│  STEP 3: Run Detected UI Tests (in-process, fast)       │
│  STEP 4: Regression Cross-Reference                     │
│  STEP 5: Gate — verify tests fail/pass before/after fix │
│  STEP 6: Code Review — deep analysis via Copilot agent  │
│                                                         │
│  Outputs → CopilotLogs artifact + detectedCategories    │
└──────────────────────┬──────────────────────────────────┘
                       │
┌──────────────────────▼──────────────────────────────────┐
│  Stage 2: RunDeepUITests (platform-pool agent)          │
│                                                         │
│  iOS: AcesShared Tahoe + iOS 26.4                       │
│  Android: ubuntu-22.04 + KVM + AVD                      │
│                                                         │
│  Runs BuildAndRunHostApp.ps1 per detected category      │
│  Outputs → drop-deep-uitests artifact (TRX + diffs)     │
└──────────────────────┬──────────────────────────────────┘
                       │
┌──────────────────────▼──────────────────────────────────┐
│  Stage 3: PostResults                                   │
│                                                         │
│  1. Download CopilotLogs (review content files)         │
│  2. Download drop-deep-uitests (TRX results)            │
│  3. Merge deep results into uitests/content.md          │
│  4. Post full AI Summary comment on PR                  │
│  5. Apply labels (s/agent-reviewed, etc.)               │
│                                                         │
│  One comment with everything — no patching needed       │
└─────────────────────────────────────────────────────────┘
```

### What's New

**Deep UI Test Execution (Stage 2)**
- Runs detected UI test categories on proper platform-pool agents (not
in-process on Linux)
- **iOS**: AcesShared Tahoe agents with iOS 26.4 simulator, iPhone 11
Pro (matching `ios-26` baselines from PR dotnet#35061)
- **Android**: ubuntu-22.04 with KVM, AVD boot with `-partition-size
2048`, `ignoreHiddenApiPolicyError` capability
- TRX results + snapshot-diff PNGs published as `drop-deep-uitests`
artifact

**Unified Comment Posting (Stage 3)**
- Comment posting and label application deferred to Stage 3 (after deep
tests complete)
- Single AI summary comment includes ALL results: code review + deep
test results
- Nested collapsible `<details>` for failed tests with full error +
stack trace
- Dynamic section title: `🧪 UI Tests — CollectionView, TabbedPage`
- Artifact download link for snapshot-diff PNGs

**Android Emulator Improvements**
- AVD boot step with proper partition size, ADB key pre-authorization,
boot wait
- `DEVICE_UDID` pass-through prevents double emulator boot
- Disk cleanup on hosted ubuntu agents (frees ~22GB)
- KVM enablement + `appium:ignoreHiddenApiPolicyError` for API 30

**iOS Simulator Improvements**
- Tahoe pool demand ensures macOS 26.x agents
- Explicit iOS 26.4 download via latest Xcode
- Auto-creates iPhone 11 Pro for baseline resolution match

### Validation

Tested across 30+ pipeline iterations on 6 PRs:

| PR | iOS | Android |
|---|---|---|
| 35358 (ViewBaseTests) | **112/112 ALL PASS** ✅ | **118/119 PASS** ✅ |
| 35359 (TabbedPage) | 44/50 (1 real failure) | 74/75 (1 real failure) |
| 35356 (CollectionView) | **415/417 PASS** ✅ | 593/619 (26 real
failures) |

---------

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…35589)

> [!NOTE]
> Are you waiting for the changes in this PR to be merged?
> It would be very helpful if you could [test the resulting
artifacts](https://github.com/dotnet/maui/wiki/Testing-PR-Builds) from
this PR and let us know in a comment if this change resolves your issue.
Thank you!

Backport of dotnet#35460 to `main`.

/cc @PureWeen

Co-authored-by: HarishKumarSF4517 <harish.kumar@syncfusion.com>
@github-actions

Copy link
Copy Markdown
Contributor

🚀 Dogfood this PR with:

⚠️ WARNING: Do not do this without first carefully reviewing the code of this PR to satisfy yourself it is safe.

curl -fsSL https://raw.githubusercontent.com/dotnet/maui/main/eng/scripts/get-maui-pr.sh | bash -s -- 35601

Or

  • Run remotely in PowerShell:
iex "& { $(irm https://raw.githubusercontent.com/dotnet/maui/main/eng/scripts/get-maui-pr.ps1) } 35601"

@dotnet-policy-service dotnet-policy-service Bot added the community ✨ Community Contribution label May 25, 2026
@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Hey there @@ne0rrmatrix! Thank you so much for your PR! Someone from the team will get assigned to your PR shortly and we'll get it reviewed.

@kubaflo

kubaflo commented May 26, 2026

Copy link
Copy Markdown
Contributor

/review -b feature/refactor-copilot-yml

@MauiBot MauiBot added s/agent-fix-pr-picked AI could not beat the PR fix - PR is the best among all candidates s/agent-reviewed PR was reviewed by AI agent workflow (full 4-phase review) labels May 26, 2026
@kubaflo

kubaflo commented May 26, 2026

Copy link
Copy Markdown
Contributor

/review -b feature/refactor-copilot-yml

@MauiBot

MauiBot commented May 26, 2026

Copy link
Copy Markdown
Collaborator

🤖 AI Summary

👋 @ne0rrmatrix — new AI review results are available. Please review the latest session below.

📊 Review Sessionafede3d · Fix Android app bar inset background coloring · 2026-05-26 22:54 UTC
🚦 Gate — Test Before & After Fix

Gate Result: ✅ PASSED

Platform: ANDROID · Base: main · Merge base: b0ea772f

Test Without Fix (expect FAIL) With Fix (expect PASS)
📱 ControlsHandlerTestBase ControlsHandlerTestBase ✅ FAIL — 955s ✅ PASS — 1079s
📱 NavigationPageTests (BarBackgroundColorColorsEdgeToEdgeTopInsetArea) Category=NavigationPage ✅ FAIL — 438s ✅ PASS — 270s
📱 ShellTests (ShellBackgroundColorsEdgeToEdgeTopInsetArea) Category=Shell ✅ FAIL — 319s ✅ PASS — 323s
🔴 Without fix — 📱 ControlsHandlerTestBase: FAIL ✅ · 955s

(truncated to last 15,000 chars)

.Threading.ThreadPool.dll.so
  [45/133] Xamarin.AndroidX.Lifecycle.ViewModel.Android.dll -> Xamarin.AndroidX.Lifecycle.ViewModel.Android.dll.so
  [124/133] System.Threading.dll -> System.Threading.dll.so
  [125/133] System.Xml.Linq.dll -> System.Xml.Linq.dll.so
  [46/133] Xamarin.AndroidX.Lifecycle.ViewModelSavedState.Android.dll -> Xamarin.AndroidX.Lifecycle.ViewModelSavedState.Android.dll.so
  [126/133] System.Xml.ReaderWriter.dll -> System.Xml.ReaderWriter.dll.so
  [127/133] System.Xml.XDocument.dll -> System.Xml.XDocument.dll.so
  [47/133] Xamarin.AndroidX.Loader.dll -> Xamarin.AndroidX.Loader.dll.so
  [128/133] System.dll -> System.dll.so
  [129/133] netstandard.dll -> netstandard.dll.so
  [48/133] Xamarin.AndroidX.Navigation.Common.Android.dll -> Xamarin.AndroidX.Navigation.Common.Android.dll.so
  [130/133] Mono.Android.Runtime.dll -> Mono.Android.Runtime.dll.so
  [49/133] Xamarin.AndroidX.Navigation.Fragment.dll -> Xamarin.AndroidX.Navigation.Fragment.dll.so
  [131/133] Java.Interop.dll -> Java.Interop.dll.so
  [50/133] Xamarin.AndroidX.Navigation.Runtime.Android.dll -> Xamarin.AndroidX.Navigation.Runtime.Android.dll.so
  [51/133] Xamarin.AndroidX.Navigation.UI.dll -> Xamarin.AndroidX.Navigation.UI.dll.so
  [52/133] Xamarin.AndroidX.RecyclerView.dll -> Xamarin.AndroidX.RecyclerView.dll.so
  [53/133] Xamarin.AndroidX.SavedState.SavedState.Android.dll -> Xamarin.AndroidX.SavedState.SavedState.Android.dll.so
  [54/133] Xamarin.AndroidX.SwipeRefreshLayout.dll -> Xamarin.AndroidX.SwipeRefreshLayout.dll.so
  [55/133] Xamarin.AndroidX.ViewPager.dll -> Xamarin.AndroidX.ViewPager.dll.so
  [56/133] Xamarin.AndroidX.ViewPager2.dll -> Xamarin.AndroidX.ViewPager2.dll.so
  [57/133] Xamarin.Google.Android.Material.dll -> Xamarin.Google.Android.Material.dll.so
  [58/133] Xamarin.GooglePlayServices.Base.dll -> Xamarin.GooglePlayServices.Base.dll.so
  [59/133] Xamarin.GooglePlayServices.Basement.dll -> Xamarin.GooglePlayServices.Basement.dll.so
  [60/133] Xamarin.GooglePlayServices.Maps.dll -> Xamarin.GooglePlayServices.Maps.dll.so
  [132/133] Mono.Android.dll -> Mono.Android.dll.so
  [61/133] Xamarin.GooglePlayServices.Tasks.dll -> Xamarin.GooglePlayServices.Tasks.dll.so
  [62/133] Xamarin.Kotlin.StdLib.dll -> Xamarin.Kotlin.StdLib.dll.so
  [63/133] Xamarin.KotlinX.Coroutines.Core.Jvm.dll -> Xamarin.KotlinX.Coroutines.Core.Jvm.dll.so
  [64/133] Xamarin.KotlinX.Serialization.Core.Jvm.dll -> Xamarin.KotlinX.Serialization.Core.Jvm.dll.so
  [65/133] xunit.abstractions.dll -> xunit.abstractions.dll.so
  [66/133] xunit.assert.dll -> xunit.assert.dll.so
  [67/133] xunit.core.dll -> xunit.core.dll.so
  [68/133] xunit.execution.dotnet.dll -> xunit.execution.dotnet.dll.so
  [69/133] xunit.runner.utility.netcoreapp10.dll -> xunit.runner.utility.netcoreapp10.dll.so
  [70/133] System.Collections.Concurrent.dll -> System.Collections.Concurrent.dll.so
  [71/133] System.Collections.Immutable.dll -> System.Collections.Immutable.dll.so
  [72/133] System.Collections.NonGeneric.dll -> System.Collections.NonGeneric.dll.so
  [73/133] System.Collections.Specialized.dll -> System.Collections.Specialized.dll.so
  [74/133] System.Collections.dll -> System.Collections.dll.so
  [75/133] System.ComponentModel.Primitives.dll -> System.ComponentModel.Primitives.dll.so
  [76/133] System.ComponentModel.TypeConverter.dll -> System.ComponentModel.TypeConverter.dll.so
  [77/133] System.ComponentModel.dll -> System.ComponentModel.dll.so
  [133/133] System.Private.CoreLib.dll -> System.Private.CoreLib.dll.so
  [78/133] System.Console.dll -> System.Console.dll.so
  [79/133] System.Diagnostics.Debug.dll -> System.Diagnostics.Debug.dll.so
  [80/133] System.Diagnostics.DiagnosticSource.dll -> System.Diagnostics.DiagnosticSource.dll.so
  [81/133] System.Diagnostics.Process.dll -> System.Diagnostics.Process.dll.so
  [82/133] System.Diagnostics.Tools.dll -> System.Diagnostics.Tools.dll.so
  [83/133] System.Diagnostics.TraceSource.dll -> System.Diagnostics.TraceSource.dll.so
  [84/133] System.Diagnostics.Tracing.dll -> System.Diagnostics.Tracing.dll.so
  [85/133] System.Drawing.Primitives.dll -> System.Drawing.Primitives.dll.so
  [86/133] System.Drawing.dll -> System.Drawing.dll.so
  [87/133] System.Formats.Asn1.dll -> System.Formats.Asn1.dll.so
  [88/133] System.Globalization.dll -> System.Globalization.dll.so
  [89/133] System.IO.Compression.Brotli.dll -> System.IO.Compression.Brotli.dll.so
  [90/133] System.IO.Compression.dll -> System.IO.Compression.dll.so
  [91/133] System.IO.FileSystem.dll -> System.IO.FileSystem.dll.so
  [92/133] System.IO.Pipelines.dll -> System.IO.Pipelines.dll.so
  [93/133] System.IO.dll -> System.IO.dll.so
  [94/133] System.Linq.Expressions.dll -> System.Linq.Expressions.dll.so
  [95/133] System.Linq.dll -> System.Linq.dll.so
  [96/133] System.Memory.dll -> System.Memory.dll.so
  [97/133] System.Net.Http.dll -> System.Net.Http.dll.so
  [98/133] System.Net.NameResolution.dll -> System.Net.NameResolution.dll.so
  [99/133] System.Net.Primitives.dll -> System.Net.Primitives.dll.so
  [100/133] System.Net.Requests.dll -> System.Net.Requests.dll.so
  [101/133] System.Net.Sockets.dll -> System.Net.Sockets.dll.so
  [102/133] System.Numerics.Vectors.dll -> System.Numerics.Vectors.dll.so
  [103/133] System.ObjectModel.dll -> System.ObjectModel.dll.so
  [104/133] System.Private.Uri.dll -> System.Private.Uri.dll.so
  [105/133] System.Private.Xml.Linq.dll -> System.Private.Xml.Linq.dll.so
  [106/133] System.Private.Xml.dll -> System.Private.Xml.dll.so
  [107/133] System.Reflection.Extensions.dll -> System.Reflection.Extensions.dll.so
  [108/133] System.Reflection.TypeExtensions.dll -> System.Reflection.TypeExtensions.dll.so
  [109/133] System.Reflection.dll -> System.Reflection.dll.so
  [110/133] System.Runtime.Extensions.dll -> System.Runtime.Extensions.dll.so
  [111/133] System.Runtime.InteropServices.RuntimeInformation.dll -> System.Runtime.InteropServices.RuntimeInformation.dll.so
  [112/133] System.Runtime.InteropServices.dll -> System.Runtime.InteropServices.dll.so
  [113/133] System.Runtime.Loader.dll -> System.Runtime.Loader.dll.so
  [114/133] System.Runtime.Numerics.dll -> System.Runtime.Numerics.dll.so
  [115/133] System.Runtime.dll -> System.Runtime.dll.so
  [116/133] System.Security.Cryptography.dll -> System.Security.Cryptography.dll.so
  [117/133] System.Text.Encoding.dll -> System.Text.Encoding.dll.so
  [118/133] System.Text.Encodings.Web.dll -> System.Text.Encodings.Web.dll.so
  [119/133] System.Text.Json.dll -> System.Text.Json.dll.so
  [120/133] System.Text.RegularExpressions.dll -> System.Text.RegularExpressions.dll.so
  [121/133] System.Threading.Tasks.dll -> System.Threading.Tasks.dll.so
  [122/133] System.Threading.Thread.dll -> System.Threading.Thread.dll.so
  [123/133] System.Threading.ThreadPool.dll -> System.Threading.ThreadPool.dll.so
  [124/133] System.Threading.dll -> System.Threading.dll.so
  [125/133] System.Xml.Linq.dll -> System.Xml.Linq.dll.so
  [126/133] System.Xml.ReaderWriter.dll -> System.Xml.ReaderWriter.dll.so
  [127/133] System.Xml.XDocument.dll -> System.Xml.XDocument.dll.so
  [128/133] System.dll -> System.dll.so
  [129/133] netstandard.dll -> netstandard.dll.so
  [130/133] Java.Interop.dll -> Java.Interop.dll.so
  [131/133] Mono.Android.Runtime.dll -> Mono.Android.Runtime.dll.so
  [132/133] Mono.Android.dll -> Mono.Android.dll.so
  [133/133] System.Private.CoreLib.dll -> System.Private.CoreLib.dll.so

Build succeeded.
    0 Warning(s)
    0 Error(s)

Time Elapsed 00:11:06.65
[11.0.0-prerelease.26230.4+92962e5c46ac08a66ded4c5696209cc60f1a232f] XHarness command issued: android test --app /home/vsts/work/1/s/artifacts/bin/Controls.DeviceTests/Release/net10.0-android/com.microsoft.maui.controls.devicetests-Signed.apk --package-name com.microsoft.maui.controls.devicetests --device-id emulator-5554 -o artifacts/log --timeout 01:00:00 -v --arg TestFilter=ControlsHandlerTestBase
�[40m�[37mdbug�[39m�[22m�[49m: ADBRunner using ADB.exe supplied from /home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/tools/net10.0/any/../../../runtimes/any/native/adb/linux/adb
�[40m�[37mdbug�[39m�[22m�[49m: Full resolved path:'/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb'
�[40m�[32minfo�[39m�[22m�[49m: Will attempt to find device supporting architectures: 'arm64-v8a', 'x86_64'
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb start-server'
�[40m�[37mdbug�[39m�[22m�[49m: 
�[40m�[32minfo�[39m�[22m�[49m: Finding attached devices/emulators...
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb devices -l'
�[40m�[37mdbug�[39m�[22m�[49m: Found 1 possible devices
�[40m�[37mdbug�[39m�[22m�[49m: Evaluating output line for device serial: emulator-5554          device product:sdk_gphone_x86_64 model:sdk_gphone_x86_64 device:generic_x86_64_arm64 transport_id:2
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 shell getprop ro.product.cpu.abilist'
�[40m�[37mdbug�[39m�[22m�[49m: Found 1 possible devices. Using 'emulator-5554'
�[40m�[32minfo�[39m�[22m�[49m: Active Android device set to serial 'emulator-5554'
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 -s emulator-5554 shell getprop ro.product.cpu.abi'
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 -s emulator-5554 shell getprop ro.build.version.sdk'
�[40m�[32minfo�[39m�[22m�[49m: Waiting for device to be available (max 5 minutes)
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 wait-for-device'
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 -s emulator-5554 shell getprop sys.boot_completed'
�[40m�[37mdbug�[39m�[22m�[49m: sys.boot_completed = '1'
�[40m�[37mdbug�[39m�[22m�[49m: Waited 0 seconds for device boot completion
�[40m�[37mdbug�[39m�[22m�[49m: Working with emulator-5554 (API 30)
�[40m�[37mdbug�[39m�[22m�[49m: Check current adb install and/or package verification settings
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 shell settings get global verifier_verify_adb_installs'
�[40m�[37mdbug�[39m�[22m�[49m: verifier_verify_adb_installs = 0
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 shell settings get global package_verifier_enable'
�[40m�[37mdbug�[39m�[22m�[49m: package_verifier_enable = 
�[40m�[1m�[33mwarn�[39m�[22m�[49m: Installing debug apks on a device might be rejected with INSTALL_FAILED_VERIFICATION_FAILURE. Make sure to set 'package_verifier_enable' to '0'
�[40m�[32minfo�[39m�[22m�[49m: Attempting to remove apk 'com.microsoft.maui.controls.devicetests'..
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 uninstall com.microsoft.maui.controls.devicetests'
�[40m�[1m�[33mwarn�[39m�[22m�[49m: Hit broken pipe error; Will make one attempt to restart ADB server, and retry the uninstallation
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 kill-server'
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 start-server'
�[40m�[37mdbug�[39m�[22m�[49m: 
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 uninstall com.microsoft.maui.controls.devicetests'
�[41m�[30mfail�[39m�[22m�[49m: Error: Exit code: 20
      Std out:
      
      
      Std err:
      - waiting for device -
      cmd: Can't find service: package
      
      
      
�[40m�[32minfo�[39m�[22m�[49m: Attempting to install /home/vsts/work/1/s/artifacts/bin/Controls.DeviceTests/Release/net10.0-android/com.microsoft.maui.controls.devicetests-Signed.apk
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 install /home/vsts/work/1/s/artifacts/bin/Controls.DeviceTests/Release/net10.0-android/com.microsoft.maui.controls.devicetests-Signed.apk'
�[41m�[30mfail�[39m�[22m�[49m: Error:
      Exit code: 1
      Std out:
      Serving...
      Performing Incremental Install
      cmd: Can't find service: package
      Performing Streamed Install
      
      
      Std err:
      adb: failed to install /home/vsts/work/1/s/artifacts/bin/Controls.DeviceTests/Release/net10.0-android/com.microsoft.maui.controls.devicetests-Signed.apk: cmd: Can't find service: package
      
      
      
�[41m�[1m�[37mcrit�[39m�[22m�[49m: Install failure: Test command cannot continue
�[40m�[32minfo�[39m�[22m�[49m: Attempting to remove apk 'com.microsoft.maui.controls.devicetests'..
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 uninstall com.microsoft.maui.controls.devicetests'
�[41m�[30mfail�[39m�[22m�[49m: Error: Exit code: 20
      Std out:
      
      
      Std err:
      cmd: Can't find service: package
      
      
      
�[40m�[32minfo�[39m�[22m�[49m: Attempting to remove apk 'com.microsoft.maui.controls.devicetests'..
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 uninstall com.microsoft.maui.controls.devicetests'
�[41m�[30mfail�[39m�[22m�[49m: Error: Exit code: 20
      Std out:
      
      
      Std err:
      cmd: Can't find service: package
      
      
      
XHarness exit code: 78 (PACKAGE_INSTALLATION_FAILURE)
  Tests completed with exit code: 78

🟢 With fix — 📱 ControlsHandlerTestBase: PASS ✅ · 1079s

(truncated to last 15,000 chars)

.103 17694 21143 I DOTNET  : 	[PASS] Does Not Leak
      05-26 19:35:48.103 17694 21143 I DOTNET  : Microsoft.Maui.DeviceTests.Memory.WindowOverlayTests 1.839287 ms
      05-26 19:35:48.103 17694 21143 I DOTNET  : Test collection for Microsoft.Maui.DeviceTests.DispatchingTests
      05-26 19:35:48.608 17694 21148 I DOTNET  : 	[PASS] DispatchFromBackgroundThread
      05-26 19:35:48.608 17694 21148 I DOTNET  : Microsoft.Maui.DeviceTests.DispatchingTests 0.5038772 ms
      05-26 19:35:48.608 17694 21148 I DOTNET  : Test collection for Microsoft.Maui.DeviceTests.BorderTests
      05-26 19:35:48.934 17694 21153 I DOTNET  : 	[PASS] Ensures the border renders the expected size - Issue 15339
      05-26 19:35:49.092 17694 21158 I DOTNET  : 	[PASS] StrokeThickness does not inset stroke path
      05-26 19:35:51.670 17694 21169 I DOTNET  : 	[PASS] Border Does Not Leak
      05-26 19:35:54.207 17694 21180 I DOTNET  : 	[PASS] Border With Stroke Shape And Name Does Not Leak
      05-26 19:35:54.207 17694 21180 I DOTNET  : 	[IGNORED] Checks that the default background is transparent
      05-26 19:35:54.396 17694 21185 I DOTNET  : 	[PASS] Rounded Rectangle Border occupies correct space
      05-26 19:35:54.398 17694 21185 I DOTNET  : Microsoft.Maui.DeviceTests.BorderTests 5.7793463 ms
      05-26 19:35:54.398 17694 21185 I DOTNET  : Test collection for Microsoft.Maui.DeviceTests.CarouselViewTests
      05-26 19:35:54.825 17694 21190 I DOTNET  : 	[PASS] HiddenCarouselViewNoCrash
      05-26 19:35:55.396 17694 21196 I DOTNET  : 	[PASS] DisconnectedCarouselViewDoesNotHookCollectionViewChanged
      05-26 19:35:57.824 17694 21202 I DOTNET  : 	[PASS] IndicatorView Provides Correct TalkBack Accessibility Description
      05-26 19:35:59.178 17694 21207 I DOTNET  : 	[PASS] Position Initializes Correctly
      05-26 19:36:00.561 17694 21212 I DOTNET  : 	[PASS] Position Initializes Correctly
      05-26 19:36:01.925 17694 21217 I DOTNET  : 	[PASS] Position Initializes Correctly
      05-26 19:36:02.395 17694 21222 I DOTNET  : 	[PASS] CarouselViewDataTemplateSelectorSelectorNoCrash
      05-26 19:36:02.396 17694 21222 I DOTNET  : Microsoft.Maui.DeviceTests.CarouselViewTests 7.9923656 ms
      05-26 19:36:02.396 17694 21222 I DOTNET  : Test collection for Microsoft.Maui.DeviceTests.RadioButtonTests
      05-26 19:36:02.878 17694 21227 I DOTNET  : 	[PASS] Issue 34322 - Explicit SemanticDescription is not overwritten by content-derived semantics
      05-26 19:36:03.229 17694 21232 I DOTNET  : 	[PASS] Issue 34322 - Templated RadioButton uses content label for semantics
      05-26 19:36:08.088 17694 21243 I DOTNET  : 	[PASS] RadioButtonHandlerShouldNotLeak
      05-26 19:36:08.089 17694 21243 I DOTNET  : Microsoft.Maui.DeviceTests.RadioButtonTests 5.6907004 ms
      05-26 19:36:08.089 17694 21243 I DOTNET  : Test collection for Microsoft.Maui.DeviceTests.AccessibilityTests
      05-26 19:36:08.102 17694 21243 I DOTNET  : 	[PASS] IsInAccessibleTree initializes correctly
      05-26 19:36:08.112 17694 21243 I DOTNET  : 	[PASS] IsInAccessibleTree initializes correctly
      05-26 19:36:08.124 17694 21243 I DOTNET  : 	[PASS] ExcludedWithChildren initializes correctly
      05-26 19:36:08.134 17694 21243 I DOTNET  : 	[PASS] ExcludedWithChildren initializes correctly
      05-26 19:36:08.134 17694 21243 I DOTNET  : Microsoft.Maui.DeviceTests.AccessibilityTests 0.0442697 ms
      05-26 19:36:08.134 17694 21243 I DOTNET  : Test collection for Microsoft.Maui.DeviceTests.TabbedPageTests
      05-26 19:36:08.467 17694 21248 I DOTNET  : 	[PASS] SettingJustSelectedATabColorOnBottomTabsDoesntCrash
      05-26 19:36:12.891 17694 21254 I DOTNET  : 	[PASS] Bar Text Color
      05-26 19:36:13.291 17694 21259 I DOTNET  : 	[PASS] ChangingBottomTabAttributesDoesntRecreateBottomTabs
      05-26 19:36:13.297 17694 21259 I DOTNET  : 	[PASS] ScaleConsistent
      05-26 19:36:21.758 17694 21264 I DOTNET  : 	[PASS] Selected/Unselected Color
      05-26 19:36:22.198 17694 21269 I DOTNET  : 	[PASS] SettingCurrentPageToNotBePositionZeroWorks
      05-26 19:36:22.612 17694 21274 I DOTNET  : 	[PASS] SettingCurrentPageToNotBePositionZeroWorks
      05-26 19:36:23.114 17694 21279 I DOTNET  : 	[PASS] SettingCurrentPageToNotBePositionZeroWorks
      05-26 19:36:23.399 17694 21284 I DOTNET  : 	[PASS] SettingCurrentPageToNotBePositionZeroWorks
      05-26 19:36:23.438 17694 21284 I DOTNET  : 	[PASS] RotationYConsistent
      05-26 19:36:23.446 17694 21284 I DOTNET  : 	[PASS] RotationXConsistent
      05-26 19:36:24.225 17694 21289 I DOTNET  : 	[PASS] NavigatingAwayFromTabbedPageResizesContentPage
      05-26 19:36:25.166 17694 21294 I DOTNET  : 	[PASS] NavigatingAwayFromTabbedPageResizesContentPage
      05-26 19:36:25.236 17694 21294 I DOTNET  : 	[PASS] ScaleXConsistent
      05-26 19:36:37.231 17694 21299 I DOTNET  : 	[PASS] MovingBetweenMultiplePagesWithNestedNavigationPages
      05-26 19:36:46.413 17694 21304 I DOTNET  : 	[PASS] MovingBetweenMultiplePagesWithNestedNavigationPages
      05-26 19:36:56.758 17694 21311 I DOTNET  : 	[PASS] MovingBetweenMultiplePagesWithNestedNavigationPages
      05-26 19:37:08.082 17694 21317 I DOTNET  : 	[PASS] MovingBetweenMultiplePagesWithNestedNavigationPages
      05-26 19:37:08.442 17694 21322 I DOTNET  : 	[PASS] BottomNavigationViewExtendsToScreenBottom
      05-26 19:37:11.162 17694 21327 I DOTNET  : 	[PASS] Does Not Leak
      05-26 19:37:16.818 17694 21332 I DOTNET  : 	[PASS] DisconnectEachPageHandlerAfterNavigation
      05-26 19:37:20.815 17694 21337 I DOTNET  : 	[PASS] DisconnectEachPageHandlerAfterNavigation
      05-26 19:37:25.493 17694 21342 I DOTNET  : 	[PASS] DisconnectEachPageHandlerAfterNavigation
      05-26 19:37:31.211 17694 21347 I DOTNET  : 	[PASS] DisconnectEachPageHandlerAfterNavigation
      05-26 19:37:31.802 17694 21352 I DOTNET  : 	[PASS] Custom RecyclerView Adapter Doesn't Crash
      05-26 19:37:31.814 17694 21352 I DOTNET  : 	[PASS] RotationConsistent
      05-26 19:37:31.825 17694 21352 I DOTNET  : 	[PASS] ScaleYConsistent
      05-26 19:37:32.180 17694 21357 I DOTNET  : 	[PASS] Using SelectedTab Color doesnt crash
      05-26 19:37:33.606 17694 21362 I DOTNET  : 	[PASS] RemovingAllPagesDoesntCrash
      05-26 19:37:34.813 17694 21367 I DOTNET  : 	[PASS] RemovingAllPagesDoesntCrash
      05-26 19:37:35.983 17694 21372 I DOTNET  : 	[PASS] RemovingAllPagesDoesntCrash
      05-26 19:37:36.994 17694 21377 I DOTNET  : 	[PASS] RemovingAllPagesDoesntCrash
      05-26 19:37:38.106 17694 21382 I DOTNET  : 	[PASS] PoppingTabbedPageDoesntCrash
      05-26 19:37:39.411 17694 21387 I DOTNET  : 	[PASS] PoppingTabbedPageDoesntCrash
      05-26 19:37:40.394 17694 21392 I DOTNET  : 	[PASS] PoppingTabbedPageDoesntCrash
      05-26 19:37:41.625 17694 21397 I DOTNET  : 	[PASS] PoppingTabbedPageDoesntCrash
      05-26 19:37:43.257 17694 21402 I DOTNET  : 	[PASS] Remove CurrentPage And Then Re-Add Doesnt Crash
      05-26 19:37:44.633 17694 21407 I DOTNET  : 	[PASS] Remove CurrentPage And Then Re-Add Doesnt Crash
      05-26 19:37:46.278 17694 21412 I DOTNET  : 	[PASS] Remove CurrentPage And Then Re-Add Doesnt Crash
      05-26 19:37:47.727 17694 21417 I DOTNET  : 	[PASS] Remove CurrentPage And Then Re-Add Doesnt Crash
      05-26 19:37:47.728 17694 21417 I DOTNET  : Microsoft.Maui.DeviceTests.TabbedPageTests 99.5320561 ms
      05-26 19:37:47.732 17694 21417 I DOTNET  : Test collection for Microsoft.Maui.DeviceTests.DatePickerTests
      05-26 19:37:48.172 17694 21422 I DOTNET  : 	[PASS] DatePicker Null Date Behavior Across All Platforms
      05-26 19:37:48.518 17694 21427 I DOTNET  : 	[PASS] DateSelected Event Fires When Platform View Date Changes
      05-26 19:37:48.518 17694 21427 I DOTNET  : Microsoft.Maui.DeviceTests.DatePickerTests 0.7845080 ms
      05-26 19:37:48.518 17694 21427 I DOTNET  : Test collection for Microsoft.Maui.DeviceTests.HybridWebViewTests_InvokeDotNet
      05-26 19:37:49.218 17694 17714 I DOTNET  : fail: Microsoft.Maui.Platform.MauiHybridWebViewClient[0]
      05-26 19:37:49.218 17694 17714 I DOTNET  :       InvokeDotNet endpoint missing or invalid request header
      05-26 19:37:49.726 17694 21433 I DOTNET  : 	[PASS] GetRequestsAreBlocked
      05-26 19:37:50.401 17694 17714 I DOTNET  : fail: Microsoft.Maui.Platform.MauiHybridWebViewClient[0]
      05-26 19:37:50.401 17694 17714 I DOTNET  :       InvokeDotNet endpoint missing or invalid request header
      05-26 19:37:50.913 17694 21440 I DOTNET  : 	[PASS] InvalidTokenHeaderIsBlocked
      05-26 19:37:50.914 17694 21440 I DOTNET  : 	[IGNORED] IframeRequestIsBlocked
      05-26 19:37:51.637 17694 17714 I DOTNET  : fail: Microsoft.Maui.Platform.MauiHybridWebViewClient[0]
      05-26 19:37:51.637 17694 17714 I DOTNET  :       InvokeDotNet request missing X-Maui-Request-Body header
      05-26 19:37:52.148 17694 21446 I DOTNET  : 	[PASS] EmptyBodyIsBlocked
      05-26 19:37:52.782 17694 17714 I DOTNET  : fail: Microsoft.Maui.Handlers.HybridWebViewHandler[0]
      05-26 19:37:52.782 17694 17714 I DOTNET  :       An error occurred while invoking a .NET method from JavaScript: The invoke data did not provide a method name.
      05-26 19:37:52.782 17694 17714 I DOTNET  :       System.InvalidOperationException: The invoke data did not provide a method name.
      05-26 19:37:52.782 17694 17714 I DOTNET  :          at Microsoft.Maui.Handlers.HybridWebViewHandler.InvokeDotNetAsync(Stream streamBody, String stringBody)
      05-26 19:37:53.289 17694 21452 I DOTNET  : 	[PASS] ValidRequestIsNotBlocked
      05-26 19:37:53.958 17694 17714 I DOTNET  : fail: Microsoft.Maui.Platform.MauiHybridWebViewClient[0]
      05-26 19:37:53.958 17694 17714 I DOTNET  :       InvokeDotNet endpoint only accepts POST requests. Received: GET
      05-26 19:37:54.473 17694 21458 I DOTNET  : 	[PASS] GetRequestWithHeaderIsBlocked
      05-26 19:37:55.200 17694 17714 I DOTNET  : fail: Microsoft.Maui.Platform.MauiHybridWebViewClient[0]
      05-26 19:37:55.200 17694 17714 I DOTNET  :       InvokeDotNet endpoint missing or invalid request header
      05-26 19:37:55.713 17694 21464 I DOTNET  : 	[PASS] MissingTokenHeaderIsBlocked
      05-26 19:37:56.438 17694 17714 I DOTNET  : fail: Microsoft.Maui.Platform.MauiHybridWebViewClient[0]
      05-26 19:37:56.438 17694 17714 I DOTNET  :       InvokeDotNet request missing X-Maui-Request-Body header
      05-26 19:37:56.946 17694 21470 I DOTNET  : 	[PASS] MissingBodyHeaderIsBlocked
      05-26 19:37:56.947 17694 21470 I DOTNET  : Microsoft.Maui.DeviceTests.HybridWebViewTests_InvokeDotNet 8.4240810 ms
      05-26 19:37:56.947 17694 21470 I DOTNET  : Test collection for Microsoft.Maui.DeviceTests.HybridWebViewTests_EvaluateJavaScriptAsync
      05-26 19:37:57.607 17694 21476 I DOTNET  : 	[PASS] EvaluateJavaScriptAndGetResult
      05-26 19:37:57.607 17694 21476 I DOTNET  : Microsoft.Maui.DeviceTests.HybridWebViewTests_EvaluateJavaScriptAsync 0.6591093 ms
      05-26 19:37:57.607 17694 21476 I DOTNET  : Test collection for Microsoft.Maui.DeviceTests.LayoutTests
      05-26 19:37:57.682 17694 21481 I DOTNET  : 	[PASS] InputTransparentCorrectlyAppliedToPlatformView
      05-26 19:37:57.701 17694 21481 I DOTNET  : 	[PASS] InputTransparentCorrectlyAppliedToPlatformView
      05-26 19:37:57.824 17694 21487 I DOTNET  : 	[PASS] FlexLayoutInHorizontalStackLayoutDoesNotCycle
      05-26 19:37:58.225 17694 21492 I DOTNET  : 	[PASS] DependentLayoutBindingsResolve
      05-26 19:37:58.420 17694 21498 I DOTNET  : 	[PASS] CascadeInputTransparentAppliesOnAdd
      05-26 19:37:58.436 17694 21498 I DOTNET  : 	[PASS] CascadeInputTransparentAppliesOnAdd
      05-26 19:37:58.476 17694 21504 I DOTNET  : 	[PASS] CascadeInputTransparentAppliesOnAdd
      05-26 19:37:58.492 17694 21504 I DOTNET  : 	[PASS] CascadeInputTransparentAppliesOnAdd
      05-26 19:37:58.598 17694 21510 I DOTNET  : 	[PASS] FlexLayoutInVerticalStackLayoutDoesNotCycle
      05-26 19:37:58.630 17694 21516 I DOTNET  : 	[PASS] CascadeInputTransparentAppliesOnInit
      05-26 19:37:58.686 17694 21516 I DOTNET  : 	[PASS] CascadeInputTransparentAppliesOnInit
      05-26 19:37:58.705 17694 21522 I DOTNET  : 	[PASS] CascadeInputTransparentAppliesOnInit
      05-26 19:37:58.849 17694 21527 I DOTNET  : 	[PASS] SizeRequestIsClampedToMinimumAndMaximum
      05-26 19:37:58.849 17694 21527 I DOTNET  : 	[IGNORED] UpdatingLayoutOptionsTriggersParentToRepositionControl
      05-26 19:37:58.930 17694 21527 I DOTNET  : 	[PASS] CascadeInputTransparentAppliesOnInsert
      05-26 19:37:58.980 17694 21527 I DOTNET  : 	[PASS] CascadeInputTransparentAppliesOnInsert
      05-26 19:37:58.980 17694 21527 I DOTNET  : 	[IGNORED] GridCellsHonorMaxHeight
      05-26 19:37:58.994 17694 21527 I DOTNET  : 	[PASS] InputTransparentUpdatesCorrectlyOnPlatformView
      05-26 19:37:59.006 17694 21527 I DOTNET  : 	[PASS] InputTransparentUpdatesCorrectlyOnPlatformView
      05-26 19:37:59.112 17694 21532 I DOTNET  : 	[PASS] GridCellsHonorMaxWidth
      05-26 19:37:59.189 17694 21538 I DOTNET  : 	[PASS] CascadeInputTransparentAppliesOnUpdate
      05-26 19:37:59.250 17694 21538 I DOTNET  : 	[PASS] CascadeInputTransparentAppliesOnUpdate
      05-26 19:37:59.278 17694 21544 I DOTNET  : 	[PASS] CascadeInputTransparentAppliesOnUpdate
      05-26 19:37:59.651 17694 21550 I DOTNET  : 	[PASS] ButtonWithImageInFlexLayoutInGridDoesNotCycle
      05-26 19:37:59.830 17694 21555 I DOTNET  : 	[PASS] GridAddAndRemoveChildrenViaIndex
      05-26 19:38:00.111 17694 21560 I DOTNET  : 	[PASS] MinimumSizeRequestsCanBeCleared
      05-26 19:38:00.111 17694 21560 I DOTNET  : Microsoft.Maui.DeviceTests.LayoutTests 2.4711268 ms
      05-26 19:38:00.324 17694 17715 I DOTNET  : Xml file was written to the provided writer.
      05-26 19:38:00.325 17694 17715 I DOTNET  : Tests run: 957 Passed: 944 Inconclusive: 0 Failed: 0 Ignored: 0
�[40m�[32minfo�[39m�[22m�[49m: <<XHARNESS_RESULT_START>>
      {
        "version": 1,
        "machineName": "runnervmfuwn7",
        "exitCode": 0,
        "exitCodeName": "SUCCESS",
        "platform": "android",
        "instrumentationExitCode": 0,
        "device": "emulator-5554",
        "deviceOsVersion": "API 30",
        "architecture": "x86_64",
        "files": [
          {
            "name": "testResults.xml",
            "type": "test-results"
          },
          {
            "name": "adb-logcat-com.microsoft.maui.controls.devicetests-default.log",
            "type": "logcat"
          }
        ]
      }
      <<XHARNESS_RESULT_END>>
�[40m�[32minfo�[39m�[22m�[49m: Attempting to remove apk 'com.microsoft.maui.controls.devicetests'..
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 uninstall com.microsoft.maui.controls.devicetests'
�[40m�[32minfo�[39m�[22m�[49m: Successfully uninstalled com.microsoft.maui.controls.devicetests
XHarness exit code: 0
  Tests completed successfully

🔴 Without fix — 📱 NavigationPageTests (BarBackgroundColorColorsEdgeToEdgeTopInsetArea): FAIL ✅ · 438s

(truncated to last 15,000 chars)

lture=neutral, PublicKeyToken=null]
      05-26 19:14:23.062 16173 16272 I DOTNET  :    Exception messages: Color Color [A=255, R=255, G=69, B=0] not found. This is what it looked like:<img>iVBORw0KGgoAAAANSUhEUgAABDgAAADSCAYAAACvgHB4AAAAAXNSR0IArs4c6QAAAARzQklUCAgICHwIZIgAABOZSURBVHic7d1pcF5XfQfgnyxb8q7YipfEMTYmxFmB0lBIBkpKCBSGtWVJGWgpe6FQGMpSKBkoLZQlQFIoZaDQQMKSFNJ2GJhQpixDy1IINJA4G4mzeEvieLcsyZL64caDY92r7ZVkH/t5ZjQT3fPee459nA/3957zP21n/u5zhgIAAABQsBmHewAAAAAArRJwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMVrG7ogQ4d7EAAAAACtsIIDAAAAKJ6AAwAAACiegAMAAAAonoADAAAAKJ6AAwAAACiegAMAAA
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at System.Threading.Tasks.Task`1[[Android.Graphics.Bitmap, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=84e04ff9cfb79065]].InnerInvoke()
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at System.Threading.Tasks.Task.<>c.<.cctor>b__288_0(Object obj)
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread , ExecutionContext , ContextCallback , Object )
      05-26 19:14:23.062 16173 16272 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread , ExecutionContext , ContextCallback , Object )
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& , Thread )
      05-26 19:14:23.062 16173 16272 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.AssertAppBarTopInsetUsesColor(IElementHandler handler, Color expectedColor)
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at Microsoft.Maui.DeviceTests.NavigationPageTests.<>c__DisplayClass2_0.<<BarBackgroundColorColorsEdgeToEdgeTopInsetArea>b__0>d.MoveNext()
      05-26 19:14:23.062 16173 16272 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.<>c__DisplayClass32_1`1.<<CreateHandlerAndAddToWindow>b__1>d[[Microsoft.Maui.DeviceTests.Stubs.WindowHandlerStub, Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
      05-26 19:14:23.062 16173 16272 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.<>c__DisplayClass0_0`1.<<SetupWindowForTests>b__0>d[[Microsoft.Maui.DeviceTests.Stubs.WindowHandlerStub, Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
      05-26 19:14:23.062 16173 16272 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.<>c__DisplayClass0_0`1.<<SetupWindowForTests>b__0>d[[Microsoft.Maui.DeviceTests.Stubs.WindowHandlerStub, Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
      05-26 19:14:23.062 16173 16272 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass3_0.<<DispatchAsync>b__0>d.MoveNext()
      05-26 19:14:23.062 16173 16272 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass2_0`1.<<DispatchAsync>b__0>d[[System.Boolean, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].MoveNext()
      05-26 19:14:23.062 16173 16272 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.<>c__DisplayClass32_0`1.<<CreateHandlerAndAddToWindow>b__0>d[[Microsoft.Maui.DeviceTests.Stubs.WindowHandlerStub, Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
      05-26 19:14:23.062 16173 16272 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass3_0.<<DispatchAsync>b__0>d.MoveNext()
      05-26 19:14:23.062 16173 16272 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass2_0`1.<<DispatchAsync>b__0>d[[System.Boolean, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].MoveNext()
      05-26 19:14:23.062 16173 16272 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:23.062 16173 16272 I DOTNET  :    at Microsoft.Maui.DeviceTests.NavigationPageTests.BarBackgroundColorColorsEdgeToEdgeTopInsetArea()
      05-26 19:14:23.062 16173 16272 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:23.062 16173 16272 I DOTNET  :    Execution time: 1.3441774
      05-26 19:14:23.062 16173 16272 I DOTNET  :    Test trait name: Category
      05-26 19:14:23.062 16173 16272 I DOTNET  :       value: NavigationPage
      05-26 19:14:23.062 16173 16272 I DOTNET  :       value: NavigationPage
      05-26 19:14:23.062 16173 16272 I DOTNET  : 
      05-26 19:14:24.159 16173 16277 I DOTNET  : 	[PASS] PopLifeCycle
      05-26 19:14:25.210 16173 16282 I DOTNET  : 	[PASS] Back Button Visibility Changes with push/pop
      05-26 19:14:25.630 16173 16287 I DOTNET  : 	[PASS] Insert Page Before Root Page and then PopToRoot
      05-26 19:14:25.631 16173 16287 I DOTNET  : 	[IGNORED] Does Not Leak
      05-26 19:14:26.008 16173 16292 I DOTNET  : 	[PASS] PushedPageFiresNavigatedEventOnInitialLoad
      05-26 19:14:27.651 16173 16297 I DOTNET  : 	[PASS] Pushing And Popping Doesnt Fire BackButtonVisible Toolbar Events
      05-26 19:14:28.525 16173 16302 I DOTNET  : 	[PASS] Set Has Back Button
      05-26 19:14:28.838 16173 16307 I DOTNET  : 	[PASS] Set Has Navigation Bar
      05-26 19:14:30.342 16173 16312 I DOTNET  : 	[PASS] Can Reuse Pages
      05-26 19:14:30.343 16173 16312 I DOTNET  : Microsoft.Maui.DeviceTests.NavigationPageTests 21.0346608 ms
      05-26 19:14:30.401 16173 16193 I DOTNET  : Failed tests:
      05-26 19:14:30.470 16173 16193 I DOTNET  : 1) 	[FAIL] NavigationPage bar background colors the edge-to-edge top inset area   Test name: NavigationPage bar background colors the edge-to-edge top inset area
      05-26 19:14:30.470 16173 16193 I DOTNET  :    Assembly:  [Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]
      05-26 19:14:30.470 16173 16193 I DOTNET  :    Exception messages: Color Color [A=255, R=255, G=69, B=0] not found. This is what it looked like:<img>iVBORw0KGgoAAAANSUhEUgAABDgAAADSCAYAAACvgHB4AAAAAXNSR0IArs4c6QAAAARzQklUCAgICHwIZIgAABOZSURBVHic7d1pcF5XfQfgnyxb8q7YipfEMTYmxFmB0lBIBkpKCBSGtWVJGWgpe6FQGMpSKBkoLZQlQFIoZaDQQMKSFNJ2GJhQpixDy1IINJA4G4mzeEvieLcsyZL64caDY92r7ZVkH/t5ZjQT3fPee459nA/3957zP21n/u5zhgIAAABQsBmHewAAAAAArRJwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMUTcAAAAADFE3AAAAAAxRNwAAAAAMVrG7ogQ4d7EAAAAACtsIIDAAAAKJ6AAwAAACiegAMAAAAonoADAAAAKJ6AAwAAACiegAMAAA
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at System.Threading.Tasks.Task`1[[Android.Graphics.Bitmap, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=84e04ff9cfb79065]].InnerInvoke()
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at System.Threading.Tasks.Task.<>c.<.cctor>b__288_0(Object obj)
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread , ExecutionContext , ContextCallback , Object )
      05-26 19:14:30.470 16173 16193 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread , ExecutionContext , ContextCallback , Object )
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& , Thread )
      05-26 19:14:30.470 16173 16193 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.AssertAppBarTopInsetUsesColor(IElementHandler handler, Color expectedColor)
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at Microsoft.Maui.DeviceTests.NavigationPageTests.<>c__DisplayClass2_0.<<BarBackgroundColorColorsEdgeToEdgeTopInsetArea>b__0>d.MoveNext()
      05-26 19:14:30.470 16173 16193 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.<>c__DisplayClass32_1`1.<<CreateHandlerAndAddToWindow>b__1>d[[Microsoft.Maui.DeviceTests.Stubs.WindowHandlerStub, Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
      05-26 19:14:30.470 16173 16193 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.<>c__DisplayClass0_0`1.<<SetupWindowForTests>b__0>d[[Microsoft.Maui.DeviceTests.Stubs.WindowHandlerStub, Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
      05-26 19:14:30.470 16173 16193 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.<>c__DisplayClass0_0`1.<<SetupWindowForTests>b__0>d[[Microsoft.Maui.DeviceTests.Stubs.WindowHandlerStub, Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
      05-26 19:14:30.470 16173 16193 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass3_0.<<DispatchAsync>b__0>d.MoveNext()
      05-26 19:14:30.470 16173 16193 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass2_0`1.<<DispatchAsync>b__0>d[[System.Boolean, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].MoveNext()
      05-26 19:14:30.470 16173 16193 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.<>c__DisplayClass32_0`1.<<CreateHandlerAndAddToWindow>b__0>d[[Microsoft.Maui.DeviceTests.Stubs.WindowHandlerStub, Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
      05-26 19:14:30.470 16173 16193 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass3_0.<<DispatchAsync>b__0>d.MoveNext()
      05-26 19:14:30.470 16173 16193 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass2_0`1.<<DispatchAsync>b__0>d[[System.Boolean, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].MoveNext()
      05-26 19:14:30.470 16173 16193 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:30.470 16173 16193 I DOTNET  :    at Microsoft.Maui.DeviceTests.NavigationPageTests.BarBackgroundColorColorsEdgeToEdgeTopInsetArea()
      05-26 19:14:30.470 16173 16193 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:14:30.470 16173 16193 I DOTNET  :    Execution time: 1.3441774
      05-26 19:14:30.470 16173 16193 I DOTNET  :    Test trait name: Category
      05-26 19:14:30.470 16173 16193 I DOTNET  :       value: NavigationPage
      05-26 19:14:30.470 16173 16193 I DOTNET  :       value: NavigationPage
      05-26 19:14:30.470 16173 16193 I DOTNET  : 
      05-26 19:14:30.496 16173 16193 I DOTNET  : Xml file was written to the provided writer.
      05-26 19:14:30.498 16173 16193 I DOTNET  : Tests run: 561 Passed: 20 Inconclusive: 0 Failed: 1 Ignored: 539
�[41m�[30mfail�[39m�[22m�[49m: Non-success instrumentation exit code: 1, expected: 0
�[40m�[32minfo�[39m�[22m�[49m: <<XHARNESS_RESULT_START>>
      {
        "version": 1,
        "machineName": "runnervmfuwn7",
        "exitCode": 1,
        "exitCodeName": "TESTS_FAILED",
        "platform": "android",
        "instrumentationExitCode": 1,
        "device": "emulator-5554",
        "deviceOsVersion": "API 30",
        "architecture": "x86_64",
        "files": [
          {
            "name": "testResults.xml",
            "type": "test-results"
          },
          {
            "name": "adb-logcat-com.microsoft.maui.controls.devicetests-default.log",
            "type": "logcat"
          }
        ]
      }
      <<XHARNESS_RESULT_END>>
�[40m�[32minfo�[39m�[22m�[49m: Attempting to remove apk 'com.microsoft.maui.controls.devicetests'..
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 uninstall com.microsoft.maui.controls.devicetests'
�[40m�[32minfo�[39m�[22m�[49m: Successfully uninstalled com.microsoft.maui.controls.devicetests
XHarness exit code: 1 (TESTS_FAILED)
  Tests completed with exit code: 1

🟢 With fix — 📱 NavigationPageTests (BarBackgroundColorColorsEdgeToEdgeTopInsetArea): PASS ✅ · 270s

(truncated to last 15,000 chars)

 Included test (filtered by Trait; 'Category':'Entry'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'FlexLayout'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'FlyoutPage'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Frame'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Gesture'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'HybridWebView'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Image'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Label'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Layout'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Lifecycle'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'ListView'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Map'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'MenuFlyout'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Mapper'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Excluded test (filtered by Trait; 'Category':'Memory'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Modal'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Page'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Path'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Picker'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'RadioButton'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'RefreshView'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'ScrollView'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'SearchBar'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Shape'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Shell'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Slider'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'SwipeView'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'TabbedPage'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'TextInput'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Toolbar'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'TemplatedView'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'View'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'VisualElement'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'VisualElementTree'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'WebView'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Window'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'WindowOverlay'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Xaml'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Accessibility'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Application'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Behavior'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Border'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'BoxView'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Button'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'CarouselView'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'CheckBox'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'CollectionView'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Compatibility'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'ContentView'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'DatePicker'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Dispatcher'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Editor'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Element'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Entry'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'FlexLayout'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'FlyoutPage'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Frame'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Gesture'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'HybridWebView'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Image'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Label'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Layout'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Lifecycle'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'ListView'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Map'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.917 21922 21951 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'MenuFlyout'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:42:06.993 21922 21951 I DOTNET  : [Test environment: 64-bit .NET .NET 10.0 [collection-per-class, non-parallel]]
      05-26 19:42:06.993 21922 21951 I DOTNET  : [Test framework: xUnit.net 2.9.0.0]
      05-26 19:42:07.041 21922 21951 I DOTNET  : Serialize test because it has to add itself to the main window
      05-26 19:42:08.865 21922 21964 I DOTNET  : 	[PASS] Swapping Navigation Toggles BackButton Correctly
      05-26 19:42:09.435 21922 21970 I DOTNET  : 	[PASS] InitialPageFiresNavigatedEvent
      05-26 19:42:12.611 21922 21979 I DOTNET  : 	[PASS] Child Pages Do Not Leak
      05-26 19:42:12.960 21922 21984 I DOTNET  : 	[PASS] NavigationBar Removes When MainPage Set To ContentPage
      05-26 19:42:14.319 21922 21989 I DOTNET  : 	[PASS] PoppingNavigationPageDoesntCrash
      05-26 19:42:15.798 21922 21994 I DOTNET  : 	[PASS] StackNavigationManager Clears References On Disconnect (Issue 33918)
      05-26 19:42:17.801 21922 21999 I DOTNET  : 	[PASS] Pushing a Tabbed Page Doesn't Throw Exception
      05-26 19:42:18.261 21922 22004 I DOTNET  : 	[PASS] Insert Page Before RootPage ShowsBackButton
      05-26 19:42:19.124 21922 22009 I DOTNET  : 	[PASS] SettingTitleIconImageSourceDoesntCrash
      05-26 19:42:20.137 21922 22015 I DOTNET  : 	[PASS] Remove Root Page Hides Back Button
      05-26 19:42:21.462 21922 22027 I DOTNET  : 	[PASS] NavigationPage bar background colors the edge-to-edge top inset area
      05-26 19:42:22.795 21922 22033 I DOTNET  : 	[PASS] PopLifeCycle
      05-26 19:42:23.744 21922 22039 I DOTNET  : 	[PASS] Back Button Visibility Changes with push/pop
      05-26 19:42:24.292 21922 22044 I DOTNET  : 	[PASS] Insert Page Before Root Page and then PopToRoot
      05-26 19:42:24.299 21922 22044 I DOTNET  : 	[IGNORED] Does Not Leak
      05-26 19:42:24.611 21922 22049 I DOTNET  : 	[PASS] PushedPageFiresNavigatedEventOnInitialLoad
      05-26 19:42:25.725 21922 22054 I DOTNET  : 	[PASS] Pushing And Popping Doesnt Fire BackButtonVisible Toolbar Events
      05-26 19:42:26.427 21922 22059 I DOTNET  : 	[PASS] Set Has Back Button
      05-26 19:42:26.834 21922 22064 I DOTNET  : 	[PASS] Set Has Navigation Bar
      05-26 19:42:28.731 21922 22069 I DOTNET  : 	[PASS] Can Reuse Pages
      05-26 19:42:28.735 21922 22069 I DOTNET  : Microsoft.Maui.DeviceTests.NavigationPageTests 21.3579715 ms
      05-26 19:42:28.807 21922 22069 I DOTNET  : Test collection for Microsoft.Maui.DeviceTests.AlertDialogTests
      05-26 19:42:28.856 21922 22069 I DOTNET  : 	[PASS] AlertDialogButtonColorDarkTheme
      05-26 19:42:28.895 21922 22069 I DOTNET  : 	[PASS] AlertDialogButtonColorLightTheme
      05-26 19:42:28.895 21922 22069 I DOTNET  : Microsoft.Maui.DeviceTests.AlertDialogTests 0.0862894 ms
      05-26 19:42:29.146 21922 21942 I DOTNET  : Xml file was written to the provided writer.
      05-26 19:42:29.147 21922 21942 I DOTNET  : Tests run: 561 Passed: 21 Inconclusive: 0 Failed: 0 Ignored: 539
�[40m�[32minfo�[39m�[22m�[49m: <<XHARNESS_RESULT_START>>
      {
        "version": 1,
        "machineName": "runnervmfuwn7",
        "exitCode": 0,
        "exitCodeName": "SUCCESS",
        "platform": "android",
        "instrumentationExitCode": 0,
        "device": "emulator-5554",
        "deviceOsVersion": "API 30",
        "architecture": "x86_64",
        "files": [
          {
            "name": "testResults.xml",
            "type": "test-results"
          },
          {
            "name": "adb-logcat-com.microsoft.maui.controls.devicetests-default.log",
            "type": "logcat"
          }
        ]
      }
      <<XHARNESS_RESULT_END>>
�[40m�[32minfo�[39m�[22m�[49m: Attempting to remove apk 'com.microsoft.maui.controls.devicetests'..
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 uninstall com.microsoft.maui.controls.devicetests'
�[40m�[32minfo�[39m�[22m�[49m: Successfully uninstalled com.microsoft.maui.controls.devicetests
XHarness exit code: 0
  Tests completed successfully

🔴 Without fix — 📱 ShellTests (ShellBackgroundColorsEdgeToEdgeTopInsetArea): FAIL ✅ · 319s

(truncated to last 15,000 chars)

PublicKeyToken=null]].MoveNext()
      05-26 19:18:58.486 16851 17070 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:18:58.486 16851 17070 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass3_0.<<DispatchAsync>b__0>d.MoveNext()
      05-26 19:18:58.486 16851 17070 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:18:58.494 16851 17070 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass2_0`1.<<DispatchAsync>b__0>d[[System.Boolean, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].MoveNext()
      05-26 19:18:58.494 16851 17070 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:18:58.494 16851 17070 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.<>c__DisplayClass32_0`1.<<CreateHandlerAndAddToWindow>b__0>d[[Microsoft.Maui.DeviceTests.Stubs.WindowHandlerStub, Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
      05-26 19:18:58.494 16851 17070 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:18:58.494 16851 17070 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass3_0.<<DispatchAsync>b__0>d.MoveNext()
      05-26 19:18:58.494 16851 17070 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:18:58.494 16851 17070 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass2_0`1.<<DispatchAsync>b__0>d[[System.Boolean, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].MoveNext()
      05-26 19:18:58.494 16851 17070 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:18:58.494 16851 17070 I DOTNET  :    at Microsoft.Maui.DeviceTests.ShellTests.ShellBackgroundColorsEdgeToEdgeTopInsetArea()
      05-26 19:18:58.494 16851 17070 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:18:58.494 16851 17070 I DOTNET  :    Execution time: 1.4707911
      05-26 19:18:58.494 16851 17070 I DOTNET  :    Test trait name: Category
      05-26 19:18:58.494 16851 17070 I DOTNET  :       value: Shell
      05-26 19:18:58.494 16851 17070 I DOTNET  :       value: Shell
      05-26 19:18:58.494 16851 17070 I DOTNET  :       value: Shell
      05-26 19:18:58.494 16851 17070 I DOTNET  :       value: Shell
      05-26 19:18:58.494 16851 17070 I DOTNET  :       value: Shell
      05-26 19:18:58.494 16851 17070 I DOTNET  : 
      05-26 19:18:59.493 16851 17075 I DOTNET  : 	[PASS] ChangingToNewMauiContextDoesntCrash
      05-26 19:18:59.780 16851 17080 I DOTNET  : 	[PASS] FlyoutContent Renderers When FlyoutBehavior Starts As Locked
      05-26 19:19:01.151 16851 17087 I DOTNET  : 	[PASS] Flyout Footer and Default Flyout Items Render
      05-26 19:19:01.463 16851 17092 I DOTNET  : 	[PASS] Toolbar Title
      05-26 19:19:02.041 16851 17098 I DOTNET  : 	[PASS] LogicalChildrenPropagateCorrectly
      05-26 19:19:03.000 16851 17103 I DOTNET  : 	[PASS] Set Has Back Button
      05-26 19:19:04.148 16851 17108 I DOTNET  : 	[PASS] Flyout Header Changes When Updated
      05-26 19:19:05.133 16851 17113 I DOTNET  : 	[PASS] Navigating During Navigated Doesnt ReFire Appearing
      05-26 19:19:06.064 16851 17118 I DOTNET  : 	[PASS] Toolbar Title Updates
      05-26 19:19:06.361 16851 17123 I DOTNET  : 	[PASS] Title View Measures
      05-26 19:19:06.886 16851 17128 I DOTNET  : 	[PASS] Flyout Width Does Not Crash
      05-26 19:19:10.235 16851 17133 I DOTNET  : 	[PASS] PopToRootAsync correctly navigates to root page
      05-26 19:19:14.758 16851 17139 I DOTNET  : 	[PASS] ForegroundColor sets icon and title color sets title
      05-26 19:19:15.446 16851 17144 I DOTNET  : 	[PASS] LifeCycleEvents Fire When Navigating Top Tabs
      05-26 19:19:15.679 16851 17149 I DOTNET  : 	[PASS] Appearing Fires Before NavigatedTo
      05-26 19:19:16.151 16851 17154 I DOTNET  : 	[PASS] Swap Shell Root Page for NavigationPage
      05-26 19:19:17.463 16851 17161 I DOTNET  : 	[PASS] FlyoutItemsRenderWhenFlyoutHeaderIsSet
      05-26 19:19:17.860 16851 17166 I DOTNET  : 	[PASS] AddingBottomTabDoesntRecreateMenu
      05-26 19:19:20.224 16851 17171 I DOTNET  : 	[PASS] Flyout Starts as Open correctly
      05-26 19:19:20.717 16851 17176 I DOTNET  : 	[PASS] FlyoutWithAsMultipleItemsRendersWithoutCrashing
      05-26 19:19:21.824 16851 17181 I DOTNET  : 	[PASS] Correctly Adjust to Making Currently Visible Shell Page Invisible
      05-26 19:19:22.140 16851 17186 I DOTNET  : 	[PASS] Empty Shell
      05-26 19:19:22.666 16851 17191 I DOTNET  : 	[PASS] SearchHandlerRendersCorrectly
      05-26 19:19:23.111 16851 17196 I DOTNET  : 	[PASS] RemovingBottomTabDoesntRecreateMenu
      05-26 19:19:24.754 16851 17203 I DOTNET  : 	[PASS] HideSoftInputOnTapped Doesn't Crash If Entry Is Still Focused After Window Is Null
      05-26 19:19:27.843 16851 17208 I DOTNET  : 	[PASS] Pages Do Not Leak
      05-26 19:19:28.324 16851 17213 I DOTNET  : 	[PASS] FlyoutHeaderRendersCorrectSizeWithFlyoutContentSet
      05-26 19:19:29.065 16851 17218 I DOTNET  : 	[PASS] Shell add then remove items from selected item
      05-26 19:19:33.564 16851 17225 I DOTNET  : 	[PASS] Shell TabBar Foreground Initializes Correctly
      05-26 19:19:38.057 16851 17232 I DOTNET  : 	[PASS] Shell TabBar Foreground Initializes Correctly
      05-26 19:19:39.202 16851 17240 I DOTNET  : 	[PASS] FlyoutHeaderMinimumHeight
      05-26 19:19:40.431 16851 17246 I DOTNET  : 	[PASS] FlyoutHeaderMinimumHeight
      05-26 19:19:41.465 16851 17252 I DOTNET  : 	[PASS] FlyoutHeaderMinimumHeight
      05-26 19:19:42.792 16851 17258 I DOTNET  : 	[PASS] FlyoutHeaderMinimumHeight
      05-26 19:19:43.192 16851 17263 I DOTNET  : 	[PASS] CanHideNavBarShadow
      05-26 19:19:43.717 16851 17268 I DOTNET  : 	[PASS] CanHideNavBarShadow
      05-26 19:19:48.241 16851 17274 I DOTNET  : 	[PASS] Shell TabBar Title Color Initializes Correctly
      05-26 19:19:52.724 16851 17280 I DOTNET  : 	[PASS] Shell TabBar Title Color Initializes Correctly
      05-26 19:19:53.157 16851 17285 I DOTNET  : 	[PASS] FlyoutItems Render When FlyoutBehavior Starts As Locked
      05-26 19:19:54.106 16851 17290 I DOTNET  : 	[PASS] TitleView Updates to Currently Visible Page
      05-26 19:19:55.109 16851 17295 I DOTNET  : 	[PASS] SwappingOutAndroidContextDoesntCrash
      05-26 19:19:57.564 16851 17300 I DOTNET  : 	[PASS] Pushing the Same Page Disconnects Previous Toolbar Items
      05-26 19:19:57.623 16851 17300 I DOTNET  : Microsoft.Maui.DeviceTests.ShellTests 94.7383963 ms
      05-26 19:19:57.627 16851 17300 I DOTNET  : Test collection for Microsoft.Maui.DeviceTests.AlertDialogTests
      05-26 19:19:57.748 16851 17300 I DOTNET  : 	[PASS] AlertDialogButtonColorDarkTheme
      05-26 19:19:57.815 16851 17300 I DOTNET  : 	[PASS] AlertDialogButtonColorLightTheme
      05-26 19:19:57.816 16851 17300 I DOTNET  : Microsoft.Maui.DeviceTests.AlertDialogTests 0.1871083 ms
      05-26 19:19:57.884 16851 16882 I DOTNET  : Failed tests:
      05-26 19:19:57.951 16851 16882 I DOTNET  : 1) 	[FAIL] Shell background colors the edge-to-edge top inset area   Test name: Shell background colors the edge-to-edge top inset area
      05-26 19:19:57.951 16851 16882 I DOTNET  :    Assembly:  [Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]
      05-26 19:19:57.951 16851 16882 I DOTNET  :    Exception messages: Color Color [A=255, R=255, G=69, B=0] not found. This is what it looked like:<img>iVBORw0KGgoAAAANSUhEUgAABDgAAADSCAYAAACvgHB4AAAAAXNSR0IArs4c6QAAAARzQklUCAgICHwIZIgAABQpSURBVHic7d1psF5VgS7gN/NAAkkwA1MIJATQQEBIUBu5MkQZGsTWrm4Gaa4XGRSKqZWrImgaEaSFqIiKQ3OR60AJGBy4IAToJoDMoGlmpIUgdCAhhJBAcsj9sStl4Ozv5EzfSdbJ81SdKrLWXgNZ+bPfs9dafabsdeiqAAAAABSs77qeAAAAAEBXCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4gk4AAAAgOIJOAAAAIDiCTgAAACA4vVZNSOr1vUkAAAAALrCFxwAAABA8QQcAAAAQPEEHAAAAEDxBBwAAABA8QQcAAAAQPEEHAAAAEDxBB
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at System.Threading.Tasks.Task.<>c.<.cctor>b__288_0(Object obj)
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread , ExecutionContext , ContextCallback , Object )
      05-26 19:19:57.951 16851 16882 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread , ExecutionContext , ContextCallback , Object )
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& , Thread )
      05-26 19:19:57.951 16851 16882 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.AssertAppBarTopInsetUsesColor(IElementHandler handler, Color expectedColor)
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at Microsoft.Maui.DeviceTests.ShellTests.<>c__DisplayClass31_0.<<ShellBackgroundColorsEdgeToEdgeTopInsetArea>b__0>d.MoveNext()
      05-26 19:19:57.951 16851 16882 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.<>c__DisplayClass32_1`1.<<CreateHandlerAndAddToWindow>b__1>d[[Microsoft.Maui.DeviceTests.Stubs.WindowHandlerStub, Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
      05-26 19:19:57.951 16851 16882 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.<>c__DisplayClass0_0`1.<<SetupWindowForTests>b__0>d[[Microsoft.Maui.DeviceTests.Stubs.WindowHandlerStub, Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
      05-26 19:19:57.951 16851 16882 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.<>c__DisplayClass0_0`1.<<SetupWindowForTests>b__0>d[[Microsoft.Maui.DeviceTests.Stubs.WindowHandlerStub, Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
      05-26 19:19:57.951 16851 16882 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass3_0.<<DispatchAsync>b__0>d.MoveNext()
      05-26 19:19:57.951 16851 16882 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass2_0`1.<<DispatchAsync>b__0>d[[System.Boolean, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].MoveNext()
      05-26 19:19:57.951 16851 16882 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at Microsoft.Maui.DeviceTests.ControlsHandlerTestBase.<>c__DisplayClass32_0`1.<<CreateHandlerAndAddToWindow>b__0>d[[Microsoft.Maui.DeviceTests.Stubs.WindowHandlerStub, Microsoft.Maui.Controls.DeviceTests, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
      05-26 19:19:57.951 16851 16882 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass3_0.<<DispatchAsync>b__0>d.MoveNext()
      05-26 19:19:57.951 16851 16882 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at Microsoft.Maui.Dispatching.DispatcherExtensions.<>c__DisplayClass2_0`1.<<DispatchAsync>b__0>d[[System.Boolean, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]].MoveNext()
      05-26 19:19:57.951 16851 16882 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:19:57.951 16851 16882 I DOTNET  :    at Microsoft.Maui.DeviceTests.ShellTests.ShellBackgroundColorsEdgeToEdgeTopInsetArea()
      05-26 19:19:57.951 16851 16882 I DOTNET  : --- End of stack trace from previous location ---
      05-26 19:19:57.951 16851 16882 I DOTNET  :    Execution time: 1.4707911
      05-26 19:19:57.951 16851 16882 I DOTNET  :    Test trait name: Category
      05-26 19:19:57.951 16851 16882 I DOTNET  :       value: Shell
      05-26 19:19:57.951 16851 16882 I DOTNET  :       value: Shell
      05-26 19:19:57.951 16851 16882 I DOTNET  :       value: Shell
      05-26 19:19:57.951 16851 16882 I DOTNET  :       value: Shell
      05-26 19:19:57.951 16851 16882 I DOTNET  :       value: Shell
      05-26 19:19:57.951 16851 16882 I DOTNET  : 
      05-26 19:19:58.108 16851 16882 I DOTNET  : Xml file was written to the provided writer.
      05-26 19:19:58.108 16851 16882 I DOTNET  : Tests run: 573 Passed: 69 Inconclusive: 0 Failed: 1 Ignored: 503
�[41m�[30mfail�[39m�[22m�[49m: Non-success instrumentation exit code: 1, expected: 0
�[40m�[32minfo�[39m�[22m�[49m: <<XHARNESS_RESULT_START>>
      {
        "version": 1,
        "machineName": "runnervmfuwn7",
        "exitCode": 1,
        "exitCodeName": "TESTS_FAILED",
        "platform": "android",
        "instrumentationExitCode": 1,
        "device": "emulator-5554",
        "deviceOsVersion": "API 30",
        "architecture": "x86_64",
        "files": [
          {
            "name": "testResults.xml",
            "type": "test-results"
          },
          {
            "name": "adb-logcat-com.microsoft.maui.controls.devicetests-default.log",
            "type": "logcat"
          }
        ]
      }
      <<XHARNESS_RESULT_END>>
�[40m�[32minfo�[39m�[22m�[49m: Attempting to remove apk 'com.microsoft.maui.controls.devicetests'..
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 uninstall com.microsoft.maui.controls.devicetests'
�[40m�[32minfo�[39m�[22m�[49m: Successfully uninstalled com.microsoft.maui.controls.devicetests
XHarness exit code: 1 (TESTS_FAILED)
  Tests completed with exit code: 1

🟢 With fix — 📱 ShellTests (ShellBackgroundColorsEdgeToEdgeTopInsetArea): PASS ✅ · 323s

(truncated to last 15,000 chars)

46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'TextInput'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Toolbar'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'TemplatedView'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'View'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'VisualElement'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'VisualElementTree'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'WebView'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Window'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'WindowOverlay'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Xaml'): [Memory] VisualDiagnosticsOverlay Does Not Leak
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Accessibility'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Application'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Behavior'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Border'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'BoxView'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Button'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'CarouselView'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'CheckBox'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'CollectionView'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Compatibility'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'ContentView'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'DatePicker'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Dispatcher'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Editor'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.167 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Element'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.168 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Entry'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.168 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'FlexLayout'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.168 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'FlyoutPage'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.168 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Frame'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.168 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Gesture'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.168 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'HybridWebView'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.168 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Image'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.168 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Label'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.168 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Layout'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.168 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Lifecycle'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.168 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'ListView'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.168 22265 22293 I DOTNET  : [FILTER] Included test (filtered by Trait; 'Category':'Map'): [Memory] TweenersWillNotLeakDuringInfiniteAnimation
      05-26 19:46:16.222 22265 22293 I DOTNET  : [Test environment: 64-bit .NET .NET 10.0 [collection-per-class, non-parallel]]
      05-26 19:46:16.222 22265 22293 I DOTNET  : [Test framework: xUnit.net 2.9.0.0]
      05-26 19:46:16.270 22265 22293 I DOTNET  : Test collection for Microsoft.Maui.DeviceTests.AlertDialogTests
      05-26 19:46:16.440 22265 22293 I DOTNET  : 	[PASS] AlertDialogButtonColorDarkTheme
      05-26 19:46:16.613 22265 22293 I DOTNET  : 	[PASS] AlertDialogButtonColorLightTheme
      05-26 19:46:16.659 22265 22293 I DOTNET  : Microsoft.Maui.DeviceTests.AlertDialogTests 0.2415132 ms
      05-26 19:46:16.661 22265 22293 I DOTNET  : Serialize test because it has to add itself to the main window
      05-26 19:46:17.428 22265 22304 I DOTNET  : 	[PASS] Can Clear ShellContent
      05-26 19:46:18.611 22265 22311 I DOTNET  : 	[PASS] FlyoutContentUpdatesAfterChange
      05-26 19:46:19.067 22265 22316 I DOTNET  : 	[PASS] Handlers not recreated when changing tabs
      05-26 19:46:19.791 22265 22321 I DOTNET  : 	[PASS] PageLayoutDoesNotExceedWindowBounds
      05-26 19:46:20.183 22265 22326 I DOTNET  : 	[PASS] Ensure Default Colors are White for BottomNavigationView
      05-26 19:46:20.615 22265 22331 I DOTNET  : 	[PASS] FooterTemplate Measures to Set Flyout Width When Flyout Locked
      05-26 19:46:21.937 22265 22338 I DOTNET  : 	[PASS] BasicShellNavigationStructurePermutations
      05-26 19:46:22.744 22265 22343 I DOTNET  : 	[PASS] BasicShellNavigationStructurePermutations
      05-26 19:46:23.530 22265 22348 I DOTNET  : 	[PASS] BasicShellNavigationStructurePermutations
      05-26 19:46:24.378 22265 22353 I DOTNET  : 	[PASS] BasicShellNavigationStructurePermutations
      05-26 19:46:24.740 22265 22358 I DOTNET  : 	[PASS] No crash going back using 'Shell.Current.GoToAsync("..")'
      05-26 19:46:27.472 22265 22368 I DOTNET  : 	[PASS] Can Reuse Pages
      05-26 19:46:29.914 22265 22379 I DOTNET  : 	[PASS] FlyoutCustomContentMargin
      05-26 19:46:32.238 22265 22386 I DOTNET  : 	[PASS] FlyoutCustomContentMargin
      05-26 19:46:34.908 22265 22397 I DOTNET  : 	[PASS] FlyoutCustomContentMargin
      05-26 19:46:35.530 22265 22402 I DOTNET  : 	[PASS] ChangingBottomTabAttributesDoesntRecreateBottomTabs
      05-26 19:46:36.644 22265 22409 I DOTNET  : 	[PASS] FlyoutIsPresented=true sets the visible status of the Shell Flyout.
      05-26 19:46:37.500 22265 22414 I DOTNET  : 	[PASS] ShellContentFragment.Destroy handles null _shellContext gracefully
      05-26 19:46:38.641 22265 22419 I DOTNET  : 	[PASS] Navigation Routes Correctly After Switching Flyout Items
      05-26 19:46:40.011 22265 22424 I DOTNET  : 	[PASS] Navigate to Root with BackButtonBehavior no Crash
      05-26 19:46:44.377 22265 22431 I DOTNET  : 	[PASS] Shell TabBar UnselectedColor Initializes Correctly
      05-26 19:46:48.887 22265 22437 I DOTNET  : 	[PASS] Shell TabBar UnselectedColor Initializes Correctly
      05-26 19:46:50.051 22265 22442 I DOTNET  : 	[PASS] Toolbar Title View Updates
      05-26 19:46:50.489 22265 22447 I DOTNET  : 	[PASS] Shell with Flyout Disabled Doesn't Render Flyout
      05-26 19:46:52.014 22265 22452 I DOTNET  : 	[PASS] Back Button Visibility Changes with push/pop
      05-26 19:46:53.476 22265 22459 I DOTNET  : 	[PASS] Shell background colors the edge-to-edge top inset area
      05-26 19:46:54.583 22265 22464 I DOTNET  : 	[PASS] ChangingToNewMauiContextDoesntCrash
      05-26 19:46:54.976 22265 22469 I DOTNET  : 	[PASS] FlyoutContent Renderers When FlyoutBehavior Starts As Locked
      05-26 19:46:56.271 22265 22476 I DOTNET  : 	[PASS] Flyout Footer and Default Flyout Items Render
      05-26 19:46:56.685 22265 22481 I DOTNET  : 	[PASS] Toolbar Title
      05-26 19:46:57.191 22265 22487 I DOTNET  : 	[PASS] LogicalChildrenPropagateCorrectly
      05-26 19:46:58.088 22265 22492 I DOTNET  : 	[PASS] Set Has Back Button
      05-26 19:46:59.348 22265 22497 I DOTNET  : 	[PASS] Flyout Header Changes When Updated
      05-26 19:47:00.452 22265 22502 I DOTNET  : 	[PASS] Navigating During Navigated Doesnt ReFire Appearing
      05-26 19:47:01.648 22265 22508 I DOTNET  : 	[PASS] Toolbar Title Updates
      05-26 19:47:02.093 22265 22513 I DOTNET  : 	[PASS] Title View Measures
      05-26 19:47:02.482 22265 22518 I DOTNET  : 	[PASS] Flyout Width Does Not Crash
      05-26 19:47:05.931 22265 22523 I DOTNET  : 	[PASS] PopToRootAsync correctly navigates to root page
      05-26 19:47:10.241 22265 22529 I DOTNET  : 	[PASS] ForegroundColor sets icon and title color sets title
      05-26 19:47:10.966 22265 22534 I DOTNET  : 	[PASS] LifeCycleEvents Fire When Navigating Top Tabs
      05-26 19:47:11.439 22265 22539 I DOTNET  : 	[PASS] Appearing Fires Before NavigatedTo
      05-26 19:47:12.072 22265 22544 I DOTNET  : 	[PASS] Swap Shell Root Page for NavigationPage
      05-26 19:47:13.147 22265 22551 I DOTNET  : 	[PASS] FlyoutItemsRenderWhenFlyoutHeaderIsSet
      05-26 19:47:13.595 22265 22556 I DOTNET  : 	[PASS] AddingBottomTabDoesntRecreateMenu
      05-26 19:47:16.041 22265 22561 I DOTNET  : 	[PASS] Flyout Starts as Open correctly
      05-26 19:47:16.560 22265 22566 I DOTNET  : 	[PASS] FlyoutWithAsMultipleItemsRendersWithoutCrashing
      05-26 19:47:17.629 22265 22571 I DOTNET  : 	[PASS] Correctly Adjust to Making Currently Visible Shell Page Invisible
      05-26 19:47:18.133 22265 22576 I DOTNET  : 	[PASS] Empty Shell
      05-26 19:47:18.755 22265 22581 I DOTNET  : 	[PASS] SearchHandlerRendersCorrectly
      05-26 19:47:19.197 22265 22586 I DOTNET  : 	[PASS] RemovingBottomTabDoesntRecreateMenu
      05-26 19:47:20.775 22265 22593 I DOTNET  : 	[PASS] HideSoftInputOnTapped Doesn't Crash If Entry Is Still Focused After Window Is Null
      05-26 19:47:24.147 22265 22599 I DOTNET  : 	[PASS] Pages Do Not Leak
      05-26 19:47:24.591 22265 22604 I DOTNET  : 	[PASS] FlyoutHeaderRendersCorrectSizeWithFlyoutContentSet
      05-26 19:47:25.383 22265 22609 I DOTNET  : 	[PASS] Shell add then remove items from selected item
      05-26 19:47:29.908 22265 22615 I DOTNET  : 	[PASS] Shell TabBar Foreground Initializes Correctly
      05-26 19:47:34.374 22265 22621 I DOTNET  : 	[PASS] Shell TabBar Foreground Initializes Correctly
      05-26 19:47:35.664 22265 22629 I DOTNET  : 	[PASS] FlyoutHeaderMinimumHeight
      05-26 19:47:36.864 22265 22638 I DOTNET  : 	[PASS] FlyoutHeaderMinimumHeight
      05-26 19:47:38.048 22265 22644 I DOTNET  : 	[PASS] FlyoutHeaderMinimumHeight
      05-26 19:47:39.287 22265 22650 I DOTNET  : 	[PASS] FlyoutHeaderMinimumHeight
      05-26 19:47:39.810 22265 22655 I DOTNET  : 	[PASS] CanHideNavBarShadow
      05-26 19:47:40.277 22265 22660 I DOTNET  : 	[PASS] CanHideNavBarShadow
      05-26 19:47:44.742 22265 22666 I DOTNET  : 	[PASS] Shell TabBar Title Color Initializes Correctly
      05-26 19:47:49.242 22265 22672 I DOTNET  : 	[PASS] Shell TabBar Title Color Initializes Correctly
      05-26 19:47:49.691 22265 22677 I DOTNET  : 	[PASS] FlyoutItems Render When FlyoutBehavior Starts As Locked
      05-26 19:47:50.663 22265 22682 I DOTNET  : 	[PASS] TitleView Updates to Currently Visible Page
      05-26 19:47:51.669 22265 22687 I DOTNET  : 	[PASS] SwappingOutAndroidContextDoesntCrash
      05-26 19:47:54.099 22265 22692 I DOTNET  : 	[PASS] Pushing the Same Page Disconnects Previous Toolbar Items
      05-26 19:47:54.100 22265 22692 I DOTNET  : Microsoft.Maui.DeviceTests.ShellTests 96.8834572 ms
      05-26 19:47:54.219 22265 22425 I DOTNET  : Xml file was written to the provided writer.
      05-26 19:47:54.223 22265 22425 I DOTNET  : Tests run: 573 Passed: 70 Inconclusive: 0 Failed: 0 Ignored: 503
�[40m�[32minfo�[39m�[22m�[49m: <<XHARNESS_RESULT_START>>
      {
        "version": 1,
        "machineName": "runnervmfuwn7",
        "exitCode": 0,
        "exitCodeName": "SUCCESS",
        "platform": "android",
        "instrumentationExitCode": 0,
        "device": "emulator-5554",
        "deviceOsVersion": "API 30",
        "architecture": "x86_64",
        "files": [
          {
            "name": "testResults.xml",
            "type": "test-results"
          },
          {
            "name": "adb-logcat-com.microsoft.maui.controls.devicetests-default.log",
            "type": "logcat"
          }
        ]
      }
      <<XHARNESS_RESULT_END>>
�[40m�[32minfo�[39m�[22m�[49m: Attempting to remove apk 'com.microsoft.maui.controls.devicetests'..
�[40m�[37mdbug�[39m�[22m�[49m: Executing command: '/home/vsts/.nuget/packages/microsoft.dotnet.xharness.cli/11.0.0-prerelease.26230.4/runtimes/any/native/adb/linux/adb -s emulator-5554 uninstall com.microsoft.maui.controls.devicetests'
�[40m�[32minfo�[39m�[22m�[49m: Successfully uninstalled com.microsoft.maui.controls.devicetests
XHarness exit code: 0
  Tests completed successfully

📁 Fix files reverted (2 files)
  • eng/pipelines/ci-copilot.yml
  • src/Controls/src/Core/Platform/Android/Extensions/ToolbarExtensions.cs

🧪 UI Tests — Shell

Detected UI test categories: Shell

Deep UI tests — 296 passed, 1 failed across 1 category on platform-pool agent (replaces in-process counts above).

🧪 UI Test Execution Results (deep, platform pool)

Category Tests Snapshot diffs
Shell 296/297 (1 ❌)
Shell — 1 failed test
ClearAndRecreateShellElements
System.TimeoutException : Timed out waiting for element...
at UITest.Appium.HelperExtensions.Wait(Func`1 query, Func`2 satisfactory, String timeoutMessage, Nullable`1 timeout, Nullable`1 retryFrequency) in /_/src/TestUtils/src/UITest.Appium/HelperExtensions.cs:line 2757
   at UITest.Appium.HelperExtensions.WaitForAtLeastOne(Func`1 query, String timeoutMessage, Nullable`1 timeout, Nullable`1 retryFrequency) in /_/src/TestUtils/src/UITest.Appium/HelperExtensions.cs:line 2784
   at UITest.Appium.HelperExtensions.WaitForElement(IApp app, String marked, String timeoutMessage, Nullable`1 timeout, Nullable`1 retryFrequency, Nullable`1 postTimeout) in /_/src/TestUtils/src/UITest.Appium/HelperExtensions.cs:line 793
   at Microsoft.Maui.TestCases.Tests.Issues.ShellItemIsVisible.ClearAndRecreateShellElements() in /_/src/Controls/tests/TestCases.Shared.Tests/Tests/Issues/XFIssue/ShellItemIsVisible.cs:line 66
   at System.Reflection.MethodBaseInvoker.InterpretedInvoke_Method(Object obj, IntPtr* arg
...

📎 Download drop-deep-uitests artifact (TRX + snapshot diffs)


🔍 Regression Cross-Reference

🔍 Regression Cross-Reference

🟢 No regression risks detected. No labeled bug-fix PRs in the last 6 months touched the modified files.


🔍 Pre-Flight — Context & Validation

Issue: #35568 - Android Edge-to-Edge: Shell and NavigationPage Top Bar colour is not used for status bar.
PR: #35601 - Fix Android app bar inset background coloring
Platforms Affected: Android
Files Changed: 1 implementation, 3 test

Key Findings

  • Issue Android Edge-to-Edge: Shell and NavigationPage Top Bar colour is not used for status bar. #35568 reports Android edge-to-edge top/status inset area uses the default theme colorPrimary/AppBar color instead of the Shell or NavigationPage bar background.
  • PR Fix Android app bar inset background coloring #35601 updates Android ToolbarExtensions.UpdateBarBackground to also update the parent AppBarLayout background and StatusBarForeground, with a one-shot post retry when the toolbar is not attached yet.
  • The linked issue was verified on Android in MAUI 9.0.0, 9.0.120, 10.0.0, and 10.0.70; comments confirm both Shell and NavigationPage are affected.
  • Gate result supplied by caller: ✅ PASSED — tests fail without the fix and pass with the fix. Gate was not re-run.
  • Impacted UI test categories: Shell; NavigationPage is covered by Android device tests rather than the shared UI test category list.

Code Review Summary

Verdict: LGTM
Confidence: medium
Errors: 0 | Warnings: 2 | Suggestions: 0

Key code review findings:

  • ⚠️ ToolbarExtensions.cs: the one-shot Post retry silently no-ops if the AppBar parent is still unavailable on the retry.
  • ⚠️ ControlsHandlerTestBase.Android.cs: the device assertion intentionally depends on a non-zero top inset, so failures may conflate inset dispatch with color validation.

Fix Candidates

# Source Approach Test Result Files Changed Notes
PR PR #35601 Sync Android parent AppBarLayout background and StatusBarForeground with MAUI toolbar background; snapshot default AppBar state for restore; retry once after toolbar attachment. ✅ PASSED (Gate) ToolbarExtensions.cs, Android device tests Original PR

🔬 Code Review — Deep Analysis

Code Review — PR #35601

Independent Assessment

What this changes: Android toolbar background updates now also synchronize the parent AppBarLayout background and StatusBarForeground, so edge-to-edge top inset/status-bar space matches the MAUI toolbar background. The PR also adds Android device regression coverage for NavigationPage and Shell.
Inferred motivation: In Android edge-to-edge mode, the area behind the status bar/top inset is painted by the native app bar container rather than only the inner toolbar; changing only the toolbar background leaves that inset using the theme/default app bar color.

Reconciliation with PR Narrative

Author claims: Fixes Android app bar inset coloring for Shell/NavigationPage by syncing AppBarLayout background/status foreground and retrying after attachment, with Android device tests.
Agreement/disagreement: The narrative matches the implementation and linked issue. The approach targets the container responsible for painting the padded inset area.

Findings

⚠️ Warning — One-shot retry silently no-ops on a second parent miss

ToolbarExtensions.cs schedules one Post when the toolbar is not yet parented. If the posted callback still cannot locate an AppBarLayout, the update is lost until the next property mapper invocation. This appears low-risk for normal handler attachment timing and is not a correctness blocker.

⚠️ Warning — Device test combines inset availability and color validation

AssertAppBarTopInsetUsesColor waits for appBar.PaddingTop > 0 and toolbar tint before sampling pixels. That validates the target edge-to-edge path, but a configuration without top inset dispatch would fail before isolating color logic. The gate result supplied for this run already confirmed tests fail without the fix and pass with the fix.

Devil's Advocate

The warning about a one-shot retry is unlikely to affect normal MAUI Android toolbar setup because UpdateBarBackground will also run on future background changes, and the posted callback generally runs after parent attachment. The test's inset dependency is intentional for this regression because the bug only manifests in the top inset/status-bar area.

Verdict: LGTM

Confidence: medium
Summary: The PR's production change is targeted and consistent with Android AppBarLayout behavior. No blocking correctness issue was found; the warnings are diagnostics/test-isolation concerns rather than reasons to request code changes.


🔧 Fix — Analysis & Comparison

Fix Candidates

# Source Approach Test Result Files Changed Notes
1 try-fix StatusBarForeground-only sync with one-shot attach listener. ❌ FAILED 1 file Targeted command failed because Android instrumentation treated `
2 try-fix Mirror toolbar solid-color tint onto AppBarLayout.BackgroundTintList/Mode; no default-state cache. ❌ FAILED 1 file NavigationPage device run built/deployed but hung beyond timeout; self-review found a major non-solid brush restore gap.
3 try-fix Tint AppBarLayout background in place, set matching StatusBarForeground, and use attach listener instead of Post. ⚠️ BLOCKED 1 file Build-only passed; full device run skipped after attempt 2 hang. Self-review found listener accumulation and clone-restore concerns.
4 try-fix AppBarLayout background-only synchronization; omit StatusBarForeground. ⚠️ BLOCKED 1 file Build-only passed; self-review found stale/default StatusBarForeground overlay risk across Material themes.
5 try-fix Mutate MaterialShapeDrawable.FillColor in place and set StatusBarForeground. ⚠️ BLOCKED 1 file Build-only passed; self-review found Material implementation coupling/shared-state and restore-path risks.
PR PR #35601 Sync Android parent AppBarLayout background and StatusBarForeground, snapshot/restore default AppBar state, retry once after attach. ✅ PASSED (Gate) 4 files Original PR; only fully validated fix from the loop.

Cross-Pollination

Model Round New Ideas? Details
maui-expert-reviewer 1 Yes Background-only synchronization; became attempt 4.
maui-expert-reviewer 1 Yes MaterialShapeDrawable.FillColor mutation; became attempt 5.
maui-expert-reviewer 1 No Remaining ToolbarExtensions-only strategies collapse to AppBarLayout background and/or StatusBarForeground; inset-routing would require Core MauiWindowInsetListener changes and incompatible test expectations.

Exhausted: Yes
Selected Fix: PR #35601 — It is the only candidate with the supplied gate result proving tests fail without the fix and pass with it. All alternatives either failed empirical validation, were blocked after the Android instrumentation hang, or introduced expert-reviewed lifecycle/default-restore/theme-coupling risks. None was demonstrably better than the PR's direct AppBarLayout background + StatusBarForeground synchronization with default-state restoration.


📋 Report — Final Recommendation

Comparative Fix Report — PR #35601

Inputs

  • Issue: Android Edge-to-Edge: Shell and NavigationPage Top Bar colour is not used for status bar. #35568 — Android edge-to-edge Shell and NavigationPage top/status inset area uses the default AppBar/theme color instead of the configured bar background.
  • Platform: Android
  • Gate: PASSED — supplied gate result says tests fail without the PR fix and pass with the PR fix. Gate verification was not rerun.
  • Expert PR review: maui-expert-reviewer found no actionable inline findings; inline-findings.json is [].

Candidate comparison

Rank Candidate Regression status Assessment
1 pr PASS Best candidate. It directly updates the parent AppBarLayout background and StatusBarForeground, snapshots/restores default AppBar state, handles solid and non-solid bar backgrounds, and is the only non-derived candidate with the supplied fail-without/pass-with gate result.
2 pr-plus-reviewer PASS Equivalent to pr. The expert reviewer had no actionable feedback to apply, so this candidate has no diff over the raw PR and no advantage over it.
3 try-fix-1 Conflicting/failed candidate artifact; targeted individual artifact says PASS StatusBarForeground-only synchronization is too narrow because the edge-to-edge top inset can be painted by AppBarLayout.Background. It also drops PR coverage for non-solid brushes and default-state restoration. Even if the targeted individual run is treated as passing, it is less complete than the PR fix.
4 try-fix-3 BLOCKED, build-only pass Similar coverage to the PR but uses attach listeners that can accumulate when UpdateBarBackground runs repeatedly before attachment. It was not fully regression-tested after the Android instrumentation hang.
5 try-fix-4 BLOCKED, build-only pass Simpler AppBarLayout background-only synchronization, but it leaves StatusBarForeground stale/default and is therefore less robust across Material theme configurations.
6 try-fix-5 BLOCKED, build-only pass Mutating MaterialShapeDrawable.FillColor preserves more of the default drawable shape, but couples the fix to Material implementation details and still depends on cloneable restore paths. It was not fully regression-tested.
7 try-fix-2 FAIL / timeout Failed empirical validation and has a known restore gap for non-solid brushes because clearing the bar background would not reliably restore the original Material/theme background.

Decision

The winning candidate is pr.

pr-plus-reviewer is functionally identical because the expert reviewer found no actionable changes to apply. All try-fix alternatives are ranked below the PR fix because they either failed or were blocked in validation, or they introduce narrower Android AppBar/status-bar behavior with weaker default-state restoration. The supplied gate result makes the raw PR fix the strongest validated option.


@AlleSchonWeg

AlleSchonWeg commented May 27, 2026

Copy link
Copy Markdown
Contributor

Hi @kubaflo ,
i want to test this PR, because it could fix some of my issues.
Could you trigger the CI to create test nuget artifacts?

Thank you

@kubaflo kubaflo changed the base branch from main to inflight/current May 27, 2026 10:42

@kubaflo kubaflo 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.

Looks good! Could you please resolve conflicts, so that we can merge?

@kubaflo kubaflo merged commit b7cbcf5 into dotnet:inflight/current May 27, 2026
2 of 3 checks passed
@github-actions github-actions Bot added this to the .NET 10.0 SR8 milestone May 27, 2026
PureWeen pushed a commit that referenced this pull request Jun 2, 2026
<!-- Please let the below note in for people that find this PR -->
> [!NOTE]
> Are you waiting for the changes in this PR to be merged?
> It would be very helpful if you could [test the resulting
artifacts](https://github.com/dotnet/maui/wiki/Testing-PR-Builds) from
this PR and let us know in a comment if this change resolves your issue.
Thank you!

Fixes #35568

## Summary
- sync the Android `AppBarLayout` background and status bar foreground
with the MAUI toolbar background
- retry the AppBar sync after the toolbar is attached so the real native
parent AppBar gets updated
- add Android device regression tests covering the edge-to-edge top
inset area for both `NavigationPage` and `Shell`

## Testing
- `dotnet build
src/Controls/tests/DeviceTests/Controls.DeviceTests.csproj -c Release -f
net10.0-android /p:TreatWarningsAsErrors=false
/p:AndroidPackageFormat=apk`
- `adb -s emulator-5554 shell am instrument -w -r -e TestFilter
"Category=NavigationPage"
com.microsoft.maui.controls.devicetests/com.microsoft.maui.controls.devicetests.TestInstrumentation`
- `adb -s emulator-5554 shell am instrument -w -r -e TestFilter
"Category=Shell"
com.microsoft.maui.controls.devicetests/com.microsoft.maui.controls.devicetests.TestInstrumentation`

---------
kubaflo pushed a commit that referenced this pull request Jun 10, 2026
…ring (#35856)

<!-- Please let the below note in for people that find this PR -->
> [!NOTE]
> Are you waiting for the changes in this PR to be merged?
> It would be very helpful if you could [test the resulting
artifacts](https://github.com/dotnet/maui/wiki/Testing-PR-Builds) from
this PR and let us know in a comment if this change resolves your issue.
Thank you!
<!--
!!!!!!! MAIN IS THE ONLY ACTIVE BRANCH. MAKE SURE THIS PR IS TARGETING
MAIN. !!!!!!!
-->

 ### Issue Details
 
The following Android UI tests fail due to changes introduced by #35601:
 
 - `TestIssue9419`
 - `ReusingNavigationPageDoesntBreakLayout`
 - `NavigationPageFeatureTests`
 
These failures were observed in the candidate PR build and require
further analysis.



 ### Reason
 
PR #35601 introduces `AppBarLayout` background sync logic that
interferes with existing navigation page layout behavior. Reverting to
unblock the candidate branch while further investigation is conducted.
 
A more comprehensive solution is being pursued in #35463 ("Make Android
system chrome follow MAUI bar colors"), which takes a window-level
approach rather than modifying `AppBarLayout` directly.
 
 ### Changes
 
- Removed `AppBarLayout` background sync logic
(`TryUpdateAppBarBackground`, `CloneDrawable`, `AppBarBackgroundState`)
from `ToolbarExtensions.cs`
- Removed `GetPlatformAppBarLayout` and `AssertAppBarTopInsetUsesColor`
test helpers
- Removed `BarBackgroundColorColorsEdgeToEdgeTopInsetArea`
(NavigationPage) and `ShellBackgroundColorsEdgeToEdgeTopInsetArea`
(Shell) tests
PureWeen pushed a commit that referenced this pull request Jun 11, 2026
<!-- Please let the below note in for people that find this PR -->
> [!NOTE]
> Are you waiting for the changes in this PR to be merged?
> It would be very helpful if you could [test the resulting
artifacts](https://github.com/dotnet/maui/wiki/Testing-PR-Builds) from
this PR and let us know in a comment if this change resolves your issue.
Thank you!

Fixes #35568

## Summary
- sync the Android `AppBarLayout` background and status bar foreground
with the MAUI toolbar background
- retry the AppBar sync after the toolbar is attached so the real native
parent AppBar gets updated
- add Android device regression tests covering the edge-to-edge top
inset area for both `NavigationPage` and `Shell`

## Testing
- `dotnet build
src/Controls/tests/DeviceTests/Controls.DeviceTests.csproj -c Release -f
net10.0-android /p:TreatWarningsAsErrors=false
/p:AndroidPackageFormat=apk`
- `adb -s emulator-5554 shell am instrument -w -r -e TestFilter
"Category=NavigationPage"
com.microsoft.maui.controls.devicetests/com.microsoft.maui.controls.devicetests.TestInstrumentation`
- `adb -s emulator-5554 shell am instrument -w -r -e TestFilter
"Category=Shell"
com.microsoft.maui.controls.devicetests/com.microsoft.maui.controls.devicetests.TestInstrumentation`

---------
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-controls-toolbar ToolBar community ✨ Community Contribution platform/android s/agent-fix-pr-picked AI could not beat the PR fix - PR is the best among all candidates s/agent-reviewed PR was reviewed by AI agent workflow (full 4-phase review)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Android Edge-to-Edge: Shell and NavigationPage Top Bar colour is not used for status bar.

5 participants