-
Notifications
You must be signed in to change notification settings - Fork 1.9k
[Testing] Feature matrix UITest Cases for Horizontal and Vertical Stack Layout #31393
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
[Testing] Feature matrix UITest Cases for Horizontal and Vertical Stack Layout #31393
Conversation
Hey there @@HarishKumarSF4517! Thank you so much for your PR! Someone from the team will get assigned to your PR shortly and we'll get it reviewed. |
/azp run MAUI-UITests-public |
Azure Pipelines successfully started running 1 pipeline(s). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @jsuarezruiz, I have committed the images? |
/azp run MAUI-UITests-public |
Azure Pipelines successfully started running 1 pipeline(s). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This pull request introduces a comprehensive test suite for StackLayout
feature matrix functionality in the .NET MAUI test application. The implementation includes both horizontal and vertical stack layout testing with configurable properties like spacing, visibility, flow direction (RTL/LTR), and rectangle dimensions.
Key Changes:
- Adds a new StackLayout Feature Matrix test case with comprehensive UI tests covering 18 different scenarios
- Implements an interactive test UI with configuration options for layout properties
- Provides a view model with data binding support for dynamic property updates
Reviewed Changes
Copilot reviewed 7 out of 75 changed files in this pull request and generated 4 comments.
Show a summary per file
File | Description |
---|---|
StackLayoutFeatureTests.cs | Comprehensive test suite with 18 test methods covering various StackLayout scenarios including visibility, RTL, spacing, and dimension combinations |
StackLayoutViewModel.cs | Data binding view model supporting layout orientation, visibility, flow direction, spacing, and rectangle dimensions with property change notifications |
StackLayoutOptionsPage.xaml/.cs | Configuration page allowing users to modify layout properties through a toolbar-accessible options menu |
StackLayoutControlPage.xaml/.cs | Main interactive demonstration page showcasing both horizontal and vertical stack layouts with nesting examples |
CorePageView.cs | Adds the new StackLayout Feature Matrix entry to the test application's main gallery navigation |
xmlns:local="clr-namespace:Maui.Controls.Sample" | ||
x:Class="Maui.Controls.Sample.StackLayoutOptionsPage" | ||
x:DataType="local:StackLayoutViewModel" | ||
Title="tackLayoutOptionsPage"> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Title attribute has a typo. It should be 'StackLayoutOptionsPage' instead of 'tackLayoutOptionsPage'.
Title="tackLayoutOptionsPage"> | |
Title="StackLayoutOptionsPage"> |
Copilot uses AI. Check for mistakes.
|
||
private async void NavigateToOptionsPage_Clicked(object sender, EventArgs e) | ||
{ | ||
BindingContext = _viewModel = new StackLayoutViewModel(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Creating a new StackLayoutViewModel instance discards any changes made in the current view model. This should retain the existing _viewModel state instead of creating a new instance.
BindingContext = _viewModel = new StackLayoutViewModel(); | |
BindingContext = _viewModel; |
Copilot uses AI. Check for mistakes.
|
||
#if ANDROID || IOS | ||
[Test] | ||
public void HorizontalStackLayout_Spacing_WithLandspace() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Method names contain a typo. 'WithLandspace' should be 'WithLandscape'.
Copilot uses AI. Check for mistakes.
} | ||
|
||
[Test] | ||
public void VerticalStackLayout_Spacing_WithLandspace() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Method names contain a typo. 'WithLandspace' should be 'WithLandscape'.
Copilot uses AI. Check for mistakes.
/azp run MAUI-UITests-public |
Azure Pipelines successfully started running 1 pipeline(s). |
This pull request adds a new interactive feature matrix for
StackLayout
, including both horizontal and vertical layouts, to the test application. The addition includes new pages for demonstrating and configuringStackLayout
behaviors, as well as a view model to support dynamic UI updates. This enables easier testing and exploration of layout options and properties.New StackLayout Feature Matrix:
Added a new entry for "StackLayout Feature Matrix" to the list of gallery pages in
CorePageView
, making the new feature matrix accessible from the main test app navigation.Introduced
StackLayoutControlPage
andStackLayoutControlMainPage
(with XAML and code-behind) to showcase interactive examples of bothHorizontalStackLayout
andVerticalStackLayout
, including nesting, spacing, alignment, and color demonstration. [1] [2]Added
StackLayoutOptionsPage
(XAML and code-behind) to allow users to adjust layout orientation, visibility, flow direction (RTL/LTR), spacing, and rectangle dimensions through a toolbar-accessible options menu. [1] [2]Implemented
StackLayoutViewModel
to support two-way data binding for layout properties, including orientation, visibility, flow direction, spacing, and rectangle size, with property change notifications for dynamic UI updates.StacKLayoutFeatureMatrix.mov