Skip to content

[cupertino_ui] Create util files. Remove widgets import in adaptive_text_selection_toolbar_test.dart and text_selection_test.dart#12023

Merged
auto-submit[bot] merged 1 commit into
flutter:mainfrom
QuncCccccc:enable_cupertino_text_selection_test
Jun 29, 2026
Merged

[cupertino_ui] Create util files. Remove widgets import in adaptive_text_selection_toolbar_test.dart and text_selection_test.dart#12023
auto-submit[bot] merged 1 commit into
flutter:mainfrom
QuncCccccc:enable_cupertino_text_selection_test

Conversation

@QuncCccccc

Copy link
Copy Markdown
Contributor

Part of flutter/flutter#182636 and flutter/flutter#188395

This PR:

  • Removed the cross-import of widgets/clipboard_utils.dart and widgets/text_selection_toolbar_utils.dart.
  • Removed @Skip tag, all tests in this file has passed. Created util files for clipboard_utils.dart and text_selection_toolbar_utils.dart
  • Moved the files to test/ folder.

This is to port changes in flutter/flutter#184278

Pre-Review Checklist

  • I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
  • I read the [AI contribution guidelines] and understand my responsibilities, or I am not using AI tools.
  • I read the [Tree Hygiene] page, which explains my responsibilities.
  • I read and followed the [relevant style guides] and ran [the auto-formatter].
  • I signed the [CLA].
  • The title of the PR starts with the name of the package surrounded by square brackets, e.g. [shared_preferences]
  • I [linked to at least one issue that this PR fixes] in the description above.
  • I followed [the version and CHANGELOG instructions], using [semantic versioning] and the [repository CHANGELOG style], or I have commented below to indicate which documented exception this PR falls under[^1].
  • I updated/added any relevant documentation (doc comments with ///).
  • I added new tests to check the change I am making, or I have commented below to indicate which [test exemption] this PR falls under[^1].
  • All existing and new tests are passing.

@flutter-dashboard flutter-dashboard Bot added the CICD Run CI/CD label Jun 25, 2026
@github-actions github-actions Bot added triage-framework Should be looked at in framework triage p: cupertino_ui labels Jun 25, 2026
@QuncCccccc QuncCccccc requested review from Piinks and justinmc June 25, 2026 23:53

@gemini-code-assist gemini-code-assist Bot 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.

Code Review

This pull request resolves cross-import issues by removing @Skip annotations from adaptive_text_selection_toolbar_test.dart and text_selection_test.dart, and introducing local test utilities clipboard_utils.dart and text_selection_toolbar_utils.dart. Feedback is provided regarding a potential runtime TypeError in MockClipboard when casting clipboardData to Map<String, dynamic>? instead of Map<dynamic, dynamic>?.

if (hasStringsThrows) {
throw Exception();
}
final clipboardDataMap = clipboardData as Map<String, dynamic>?;

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.

high

Casting clipboardData directly to Map<String, dynamic>? can throw a TypeError at runtime. When platform channel methods like Clipboard.setData are invoked, the arguments are decoded as Map<Object?, Object?> (or Map<dynamic, dynamic>) by the standard message codec. In Dart, a Map<Object?, Object?> cannot be cast to Map<String, dynamic> using as and will result in a TypeError. Using Map<dynamic, dynamic>? is safer and avoids this issue.

Suggested change
final clipboardDataMap = clipboardData as Map<String, dynamic>?;
final clipboardDataMap = clipboardData as Map<dynamic, dynamic>?;

@QuncCccccc QuncCccccc force-pushed the enable_cupertino_text_selection_test branch from 2cc00fd to 0528f30 Compare June 26, 2026 04:12
@github-actions github-actions Bot removed the CICD Run CI/CD label Jun 26, 2026
@QuncCccccc QuncCccccc added the CICD Run CI/CD label Jun 26, 2026

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

LGTM!

@Piinks Piinks added the autosubmit Merge PR when tree becomes green via auto submit App label Jun 29, 2026
@auto-submit auto-submit Bot merged commit ef9b66c into flutter:main Jun 29, 2026
88 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

autosubmit Merge PR when tree becomes green via auto submit App CICD Run CI/CD p: cupertino_ui triage-framework Should be looked at in framework triage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants