[Testing] Re-saved ShouldFlyoutBeVisibleAfterMaximizingWindow test case images in PR 33185 - [12/22/2025] Candidate#33271
Conversation
|
Hey there @@TamilarasanSF4853! Thank you so much for your PR! Someone from the team will get assigned to your PR shortly and we'll get it reviewed. |
Summary of unit test failure root cause Test: Maui18123.MultiBindingShouldNotThrow ------------------------------------------------------------------------------- Root Cause AnalysisWhat PR #32961 Changed The PR introduced a dependency mechanism to fix issue #31939 (CommandParameter - Added DependsOn() method to BindableProperty - allows declaring that Command depends on CommandParameter Why Maui18123 Test HangsThe test has a specific combination that creates an infinite recursion loop: Test Scenario: - 2 Buttons (deleteBtn, editBtn) The Infinite Loop: - Button.SendClicked() → executes Command → changes Mode property The critical issue: Step 8's ForceBindingApply() is being called on a ------------------------------------------------------------------------------- Fix AttemptsAttempt 1: Add _applying guard in ForceBindingApply ✗ if (_applying) return; Why it failed: _applying is only set during SetValueActual(), not during the Attempt 2: Track force-applying properties per instance ✗ HashSet _forceApplyingProperties; Why it failed: The recursion happens across different code paths (DataTrigger → Attempt 3: ThreadStatic guard in GetCanExecute ✗ [ThreadStatic] static bool _isEvaluatingCanExecute; Why it failed: Doesn't prevent the issue when multiple button instances share Attempt 4: Instance-level HashSet in GetCanExecute ✓ (Partially) [ThreadStatic] static HashSet? _evaluatingInstances; Current status: This SHOULD work theoretically, but tests still hang. The issue ------------------------------------------------------------------------------- The fundamental design issue is: ForceBindingApply() doesn't distinguish between: - ❌ Pending bindings that haven't resolved yet (what it was designed to fix) When a DataTrigger sets a new MultiBinding as CommandParameter, that binding IS ------------------------------------------------------------------------------- Summary PR #32961's ForceBindingApply() mechanism creates an infinite loop with the The test needs to either be: - Skipped with documentation of the known issue |
This reverts commit 33ecfef.
…se images in PR 33185 - [12/22/2025] Candidate (#33271) This PR addresses the UI test image failures that occurred in the inflight/candidate branch #33185 and includes updates to improve rendering and test stability across platforms. - Re-saved the ShouldFlyoutBeVisibleAfterMaximizingWindow images on Mac and Windows platforms. ### Test cases: - ShouldFlyoutBeVisibleAfterMaximizingWindow
…se images in PR 33185 - [12/22/2025] Candidate (#33271) This PR addresses the UI test image failures that occurred in the inflight/candidate branch #33185 and includes updates to improve rendering and test stability across platforms. - Re-saved the ShouldFlyoutBeVisibleAfterMaximizingWindow images on Mac and Windows platforms. ### Test cases: - ShouldFlyoutBeVisibleAfterMaximizingWindow
## CollectionView - Fixed the NRE in CarouselViewController on iOS 15.5 & 16.4 by @Ahamed-Ali in #30838 <details> <summary>🔧 Fixes</summary> - [NRE in CarouselViewController on iOS 15.5 & 16.4](#28557) </details> - [iOS, macOS] Fixed CollectionView group header size changes with ItemSizingStrategy by @NanthiniMahalingam in #33161 <details> <summary>🔧 Fixes</summary> - [[NET 10] I6_Grouping - Grouping_with_variable_sized_items changing the 'ItemSizingStrategy' also changes the header size.](#33130) </details> ## Flyout - Add unit tests for TabBar and FlyoutItem navigation ApplyQueryAttributes (#25663) by @StephaneDelcroix in #33006 ## Flyoutpage - Fixed the FlyoutPage.Flyout Disappearing When Maximizing the Window on Mac Platform by @NanthiniMahalingam in #26701 <details> <summary>🔧 Fixes</summary> - [FlyoutPage.Flyout - navigation corrupted when running om mac , on window ok](#22719) </details> ## Mediapicker - [Windows] Fix for PickPhotosAsync throws exception if image is modified by @HarishwaranVijayakumar in #32952 <details> <summary>🔧 Fixes</summary> - [PickPhotosAsync throws exception if image is modified.](#32408) </details> ## Navigation - Fix for TabBar Navigation does not invoke its IQueryAttributable.ApplyQueryAttributes(query) by @SuthiYuvaraj in #25663 <details> <summary>🔧 Fixes</summary> - [Tabs defined in AppShell.xaml does not invoke its view model's IQueryAttributable.ApplyQueryAttributes(query) implementaion](#13537) - [`ShellContent` routes do not call `ApplyQueryAttributes`](#28453) </details> ## ScrollView - Fix ScrollToPosition.Center behavior in ScrollView on iOS and MacCatalyst by @devanathan-vaithiyanathan in #26825 <details> <summary>🔧 Fixes</summary> - [ScrollToPosition.Center Centers the First Item too in iOS and Catalyst](#26760) - [On iOS - ScrollView.ScrollToAsync Element, ScrollToPosition.MakeVisible shifts view to the right, instead of just scrolling vertically](#28965) </details> ## Searchbar - [iOS, Mac, Windows] Fixed CharacterSpacing for SearchBar text and placeholder text by @Dhivya-SF4094 in #30407 <details> <summary>🔧 Fixes</summary> - [[iOS, Mac, Windows] SearchBar CharacterSpacing property is not working as expected](#30366) </details> ## Shell - Update logic for large title display mode on iOS - shell by @kubaflo in #33039 ## TitleView - [iOS] Fixed memory leak with PopToRootAsync when using TitleView by @Vignesh-SF3580 in #28547 <details> <summary>🔧 Fixes</summary> - [NavigationPage.TitleView causes memory leak with PopToRootAsync](#28201) </details> ## Xaml - [C] Fix binding to interface-inherited properties like IReadOnlyList<T>.Count by @StephaneDelcroix in #32912 <details> <summary>🔧 Fixes</summary> - [Compiled Binding to Array.Count provides no result](#13872) </details> - Fix #31939: CommandParameter TemplateBinding lost during reparenting by @StephaneDelcroix in #32961 <details> <summary>🔧 Fixes</summary> - [CommandParameter TemplateBinding Lost During ControlTemplate Reparenting](#31939) </details> <details> <summary>🧪 Testing (4)</summary> - [Testing] Fixed Test case failure in PR 33185 - [12/22/2025] Candidate by @TamilarasanSF4853 in #33257 - [Testing] Re-saved ShouldFlyoutBeVisibleAfterMaximizingWindow test case images in PR 33185 - [12/22/2025] Candidate by @TamilarasanSF4853 in #33271 - [Testing] Fixed Test case failure in PR 33185 - [12/22/2025] Candidate - 2 by @TamilarasanSF4853 in #33299 - [Testing] Fixed Test case failure in PR 33185 - [12/22/2025] Candidate - 3 by @TamilarasanSF4853 in #33311 </details> <details> <summary>📦 Other (2)</summary> - [XSG][BindingSourceGen] Add support for RelayCommand to compiled bindings by @simonrozsival via @Copilot in #32954 <details> <summary>🔧 Fixes</summary> - [Issue #25818](#25818) </details> - Revert "Update logic for large title display mode on iOS - shell (#33039)" in cff7f35 </details> **Full Changelog**: main...inflight/candidate
…se images in PR 33185 - [12/22/2025] Candidate (#33271) This PR addresses the UI test image failures that occurred in the inflight/candidate branch #33185 and includes updates to improve rendering and test stability across platforms. - Re-saved the ShouldFlyoutBeVisibleAfterMaximizingWindow images on Mac and Windows platforms. ### Test cases: - ShouldFlyoutBeVisibleAfterMaximizingWindow
This PR addresses the UI test image failures that occurred in the inflight/candidate branch #33185 and includes updates to improve rendering and test stability across platforms.
Test cases: