Skip to content

Conversation

@ghost
Copy link

@ghost ghost commented May 30, 2025

Description of Change

This pull request introduces a new feature matrix for the CheckBox control in the Maui.Controls.Sample project. It includes updates to the UI, view model, and test cases to support the feature matrix functionality, enabling detailed testing and interaction with CheckBox properties such as IsChecked, IsEnabled, IsVisible, and Color.

Feature Matrix Implementation:

  • UI for CheckBox Feature Matrix:

    • Added a new XAML file CheckBoxControlPage.xaml to define the layout and bindings for the CheckBox feature matrix, including controls for toggling properties and changing colors.
    • Created corresponding code-behind in CheckBoxControlPage.xaml.cs to manage events and commands for the feature matrix.
  • UI Tests:

    • Added comprehensive tests in CheckBoxFeatureTests.cs to validate default values, property changes, event triggering, visibility, and color changes for the CheckBox control.

Output

Screen.Recording.2025-05-30.at.10.27.34.AM.mov

@dotnet-policy-service dotnet-policy-service bot added the community ✨ Community Contribution label May 30, 2025
@dotnet-policy-service
Copy link
Contributor

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

@dotnet-policy-service dotnet-policy-service bot added the partner/syncfusion Issues / PR's with Syncfusion collaboration label May 30, 2025
@ghost ghost added the area-testing Unit tests, device tests label May 30, 2025
@jsuarezruiz
Copy link
Contributor

/azp run MAUI-UITests-public

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).


[Test]
[Category(UITestCategories.CheckBox)]
public void CheckBox_SetIsCheckedAndColor_VerifyVisualState()
Copy link
Contributor

Choose a reason for hiding this comment

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

Pending snapshots (Mac and Windows) already available in the latest build.
Example:
image

Could you commit the images?

Copy link
Author

Choose a reason for hiding this comment

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

@jsuarezruiz I have committed the base images from CI. Can you please review and trigger the CI again?

@ghost ghost requested a review from jsuarezruiz May 30, 2025 09:19
@ghost ghost marked this pull request as ready for review May 30, 2025 12:28
@ghost ghost self-requested a review as a code owner May 30, 2025 12:28
@ghost ghost requested a review from mattleibow May 30, 2025 12:28
@sheiksyedm sheiksyedm requested a review from Copilot May 30, 2025 14:45
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR introduces a feature matrix for the CheckBox control to facilitate detailed UI testing of various properties (IsChecked, IsEnabled, IsVisible, Color) along with corresponding UI tests.

  • Added UI page and code-behind for the CheckBox feature matrix
  • Created a view model with commands and property change notifications for the CheckBox
  • Added comprehensive UI tests to validate state changes and visual outputs
  • Updated the gallery to include the new CheckBox feature matrix page

Reviewed Changes

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

Show a summary per file
File Description
src/Controls/tests/TestCases.Shared.Tests/Tests/FeatureMatrix/CheckBoxFeatureTests.cs New UI tests validating CheckBox behavior and property changes
src/Controls/tests/TestCases.HostApp/FeatureMatrix/CheckBox/CheckBoxViewModel.cs Implements state management and command execution for the feature
src/Controls/tests/TestCases.HostApp/FeatureMatrix/CheckBox/CheckBoxControlPage.xaml.cs Code-behind handling interactions and command binding
src/Controls/tests/TestCases.HostApp/FeatureMatrix/CheckBox/CheckBoxControlPage.xaml XAML layout defining the CheckBox and associated controls
src/Controls/tests/TestCases.HostApp/CoreViews/CorePageView.cs Updated gallery page list to include CheckBox feature matrix page
Comments suppressed due to low confidence (1)

src/Controls/tests/TestCases.Shared.Tests/Tests/FeatureMatrix/CheckBoxFeatureTests.cs:89

  • There is no test case covering the default color reset via the 'DefaultColorButton'. Consider adding a test to validate that setting the default color resets the color properly.
public void CheckBox_ChangeColor_VerifyVisualState()

@rmarinho rmarinho changed the base branch from main to inflight/current May 30, 2025 18:57
@rmarinho rmarinho merged commit 9890c0b into dotnet:inflight/current May 30, 2025
2 checks passed
github-actions bot pushed a commit that referenced this pull request Jun 2, 2025
* added sample and test class files

* Added android snap

* Updated images for android and ios

* Update CorePageView.cs

* updated base images for windows and catalyst platform

* removed unused references
github-actions bot pushed a commit that referenced this pull request Jun 6, 2025
* added sample and test class files

* Added android snap

* Updated images for android and ios

* Update CorePageView.cs

* updated base images for windows and catalyst platform

* removed unused references
github-actions bot pushed a commit that referenced this pull request Jun 6, 2025
* added sample and test class files

* Added android snap

* Updated images for android and ios

* Update CorePageView.cs

* updated base images for windows and catalyst platform

* removed unused references
github-actions bot pushed a commit that referenced this pull request Jun 7, 2025
* added sample and test class files

* Added android snap

* Updated images for android and ios

* Update CorePageView.cs

* updated base images for windows and catalyst platform

* removed unused references
github-actions bot pushed a commit that referenced this pull request Jun 10, 2025
* added sample and test class files

* Added android snap

* Updated images for android and ios

* Update CorePageView.cs

* updated base images for windows and catalyst platform

* removed unused references
github-actions bot pushed a commit that referenced this pull request Jun 10, 2025
* added sample and test class files

* Added android snap

* Updated images for android and ios

* Update CorePageView.cs

* updated base images for windows and catalyst platform

* removed unused references
github-actions bot pushed a commit that referenced this pull request Jun 11, 2025
* added sample and test class files

* Added android snap

* Updated images for android and ios

* Update CorePageView.cs

* updated base images for windows and catalyst platform

* removed unused references
github-actions bot pushed a commit that referenced this pull request Jun 11, 2025
* added sample and test class files

* Added android snap

* Updated images for android and ios

* Update CorePageView.cs

* updated base images for windows and catalyst platform

* removed unused references
github-actions bot pushed a commit that referenced this pull request Jun 16, 2025
* added sample and test class files

* Added android snap

* Updated images for android and ios

* Update CorePageView.cs

* updated base images for windows and catalyst platform

* removed unused references
github-actions bot pushed a commit that referenced this pull request Jun 16, 2025
* added sample and test class files

* Added android snap

* Updated images for android and ios

* Update CorePageView.cs

* updated base images for windows and catalyst platform

* removed unused references
github-actions bot pushed a commit that referenced this pull request Jun 19, 2025
* added sample and test class files

* Added android snap

* Updated images for android and ios

* Update CorePageView.cs

* updated base images for windows and catalyst platform

* removed unused references
PureWeen added a commit that referenced this pull request Jun 21, 2025
For more information about inflight process check
https://github.com/dotnet/maui/wiki/Inflight-Branch-Process

# .NET MAUI Release Notes - inflight/candidate Branch

## MAUI Product Fixes
* [iOS] Fix SwipeView programmatic open when background color is set by
@Shalini-Ashokan in #29765
* [iOS] FormattedText with text color causes stack overflow - fix by
@kubaflo in #29874
* [iOS] Fix AdaptiveTrigger not working as expected by @jsuarezruiz in
#20987
* [iOS] Fix for Flyout title is not broken over multiple lines when you
rotate your screen by @BagavathiPerumal in
#29171
* [Windows] Fix for Assigning null to the SelectedItem of the
CollectionView in the SelectionChanged event does not clear the
selection by @SyedAbdulAzeemSF4852 in
#29288
* Fix TapCoordinates method in Catalyst by @jsuarezruiz in
#29775
* Fixed ItemSpacing on CarouselView resizes items [Android] by
@Dhivya-SF4094 in #29796
* Perf : ButtonContentTypeConverter now using InvariantCulture to parse
double by @antoine-jonathan in #25393
* ToolbarItem behavior with ImageSource iOS - fix by @kubaflo in
#28833
* [Android] Fixed Button Shadow Color Transparency Not Applied Correctly
by @NanthiniMahalingam in #29371
* Don't call NSAttributedString with HTML from a background thread by
@kubaflo in #26153
* [Windows] Implemented the Resize and Downsize functions in the
W2DImage class by @HarishwaranVijayakumar in
#29138
* Templated indicator view - improvements by @kubaflo in
#25642
* Update Issue25946.xaml by @anandhan-rajagopal in
#30025

## Testing
* Fixed Test case failure in PR 26153 - iOS by @kubaflo in
#29906
* Fixed Test case failure in PR 25642 - snapshots by @kubaflo in
#29881
* [Testing] Feature Matrix UITest Cases for RadioButton by
@TamilarasanSF4853 in #29744
* [Testing] Feature Matrix UITest Cases for CollectionView ItemsSource
Feature by @LogishaSelvarajSF4525 in
#29322
* [Testing] Feature Matrix UITest Cases for Stepper by
@nivetha-nagalingam in #29731
* [Testing] Feature Matrix UITest Cases for CheckBox Control by
@anandhan-rajagopal in #29739
* Update the comment for the test properties by @mattleibow in
#27306

## Dependency Updates
* No changes in this category

## Docs
* No changes in this category

## Housekeeping
* [create-pull-request] automated change by @github-actions[bot] in
#29875
* [create-pull-request] automated change by @github-actions[bot] in
#29792
* [create-pull-request] automated change by @github-actions[bot] in
#29760

**Full Changelog**:
origin/main...origin/inflight/candidate
rmarinho pushed a commit that referenced this pull request Jun 24, 2025
* added sample and test class files

* Added android snap

* Updated images for android and ios

* Update CorePageView.cs

* updated base images for windows and catalyst platform

* removed unused references
@github-actions github-actions bot locked and limited conversation to collaborators Jun 30, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-testing Unit tests, device tests community ✨ Community Contribution partner/syncfusion Issues / PR's with Syncfusion collaboration

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants