Skip to content

[Testing] Feature Matrix UITest Cases for RefreshView Control #30614

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

Open
wants to merge 10 commits into
base: main
Choose a base branch
from

Conversation

TamilarasanSF4853
Copy link
Contributor

This PR includes a comprehensive set of UI test cases for the RefreshView control. The tests validate the RefreshView control functionality, including properties such as Command, CommandParameter, FlowDirection, IsEnabled, IsVisible, IsRefreshing, RefreshColor, and Shadow, along with pull-to-refresh interactions with different content types (ScrollView and CollectionView).

RefreshView Control Implementation:

  • Added RefreshViewControlMainPage to host the RefreshView control, with bindings for properties like Command, CommandParameter, FlowDirection, IsEnabled, IsVisible, IsRefreshing, RefreshColor, and Shadow. The control dynamically switches between ScrollView and CollectionView content to demonstrate refresh functionality with different scrollable containers.

  • Created RefreshViewOptionsPage to allow users to configure RefreshView properties interactively, including command parameter selection, state control, layout direction, refresh color selection, and visual effects configuration.

  • Added event handlers for property changes in RefreshViewOptionsPage.xaml.cs to update the RefreshView control dynamically through a ViewModel pattern, enabling real-time property modifications and validation.

  • Implemented RefreshViewViewModel with comprehensive property binding and Command execution that handles refresh operations, parameter-based content changes, and status tracking.

  • Implemented a suite of UI tests in RefreshViewFeatureTests to validate default state verification, pull-to-refresh functionality with different content types, command parameter handling, state management (IsEnabled, IsVisible, IsRefreshing), refresh color styling, flow direction support, shadow effects, and visual verification of property configurations using VerifyScreenshot() across platforms with platform-specific conditional compilation for Catalyst and Windows limitations.

Issues Identified

Screen.Recording.2025-07-14.at.6.37.11.PM.mov

Copy link
Contributor

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.

@dotnet-policy-service dotnet-policy-service bot added community ✨ Community Contribution partner/syncfusion Issues / PR's with Syncfusion collaboration labels Jul 14, 2025
@anandhan-rajagopal anandhan-rajagopal added the area-testing Unit tests, device tests label Jul 14, 2025
@jsuarezruiz
Copy link
Contributor

/azp run MAUI-UITests-public

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Contributor

@jsuarezruiz jsuarezruiz left a comment

Choose a reason for hiding this comment

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

Pending snapshots:
image
Already available in the latest build. Could you commit the images?

@TamilarasanSF4853
Copy link
Contributor Author

Pending snapshots: image Already available in the latest build. Could you commit the images?

@jsuarezruiz I have added the pending snapshots in the latest commit.

@jsuarezruiz
Copy link
Contributor

/azp run MAUI-UITests-public

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@TamilarasanSF4853 TamilarasanSF4853 marked this pull request as ready for review July 17, 2025 14:41
@TamilarasanSF4853 TamilarasanSF4853 requested a review from a team as a code owner July 17, 2025 14:41
Copy link
Contributor

@jsuarezruiz jsuarezruiz left a comment

Choose a reason for hiding this comment

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

Pending snapshot for RefreshView_SetShadowWithCollectionView_VerifyShadowApplied in Mac.
image

@TamilarasanSF4853
Copy link
Contributor Author

Pending snapshot for RefreshView_SetShadowWithCollectionView_VerifyShadowApplied in Mac. image

@jsuarezruiz I have added the pending snapshots in the latest commit.

@jsuarezruiz
Copy link
Contributor

/azp run MAUI-UITests-public

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Contributor

@jsuarezruiz jsuarezruiz left a comment

Choose a reason for hiding this comment

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

Previously included, but the test ProgressSpinnerNotDisabledOnStartup that is a RefreshView test, is failing on Android.

  Failed ProgressSpinnerNotDisabledOnStartup [11 s]
  Error Message:
   VisualTestUtils.VisualTestFailedException : 
Snapshot different than baseline: Issue28343_ProgressSpinnerDisabled.png (2.70% difference)
If the correct baseline has changed (this isn't a a bug), then update the baseline image.
See test attachment or download the build artifacts to get the new snapshot file.

Could you review it in this PR?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
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.

3 participants