[cupertino_ui] Re-enable tab_scaffold_test.dart#12064
Conversation
There was a problem hiding this comment.
Code Review
This pull request removes the skip annotation from tab_scaffold_test.dart, updates its imports, and introduces a new test utility file widget_inspector_test_utils.dart containing DispatchedEventKey and TestWidgetInspectorService. Feedback suggests removing an unused import in the new utility file and replacing it with package:flutter/widgets.dart. Additionally, it is recommended to use .toString() instead of a direct cast to String in testBoolExtension to handle boolean values safely.
|
|
||
| import 'dart:convert'; | ||
|
|
||
| import 'package:cupertino_ui/cupertino_ui.dart'; |
There was a problem hiding this comment.
The import of package:cupertino_ui/cupertino_ui.dart is unused in this test utility file. To avoid unnecessary coupling and keep the test utilities clean, import package:flutter/widgets.dart instead, which provides WidgetInspectorService and WidgetsBinding.
| import 'package:cupertino_ui/cupertino_ui.dart'; | |
| import 'package:flutter/widgets.dart'; |
References
- Unused imports should be avoided to keep the codebase clean and maintainable, adhering to Dart's standard lint rules (unused_import). (link)
There was a problem hiding this comment.
No it's definitely used.
| Future<String> testBoolExtension(String name, Map<String, String> arguments) async { | ||
| expect(extensions, contains(name)); | ||
| // Encode and decode to JSON to match behavior using a real service | ||
| // extension where only JSON is allowed. | ||
| return (json.decode(json.encode(await extensions[name]!(arguments))) | ||
| as Map<String, dynamic>)['enabled'] | ||
| as String; | ||
| } |
There was a problem hiding this comment.
The testBoolExtension method casts the 'enabled' value directly to String using as String. However, some service extensions return actual boolean values (e.g., true or false) rather than string representations. To make this utility more robust and prevent runtime TypeErrors, convert the value to a string using .toString().
Future<String> testBoolExtension(String name, Map<String, String> arguments) async {
expect(extensions, contains(name));
// Encode and decode to JSON to match behavior using a real service
// extension where only JSON is allowed.
final Map<String, dynamic> result = json.decode(json.encode(await extensions[name]!(arguments))) as Map<String, dynamic>;
return result['enabled']?.toString() ?? 'false';
}There was a problem hiding this comment.
Sounds reasonable, though I know you just copied this code, so it's fine either way.
|
|
||
| import 'dart:convert'; | ||
|
|
||
| import 'package:cupertino_ui/cupertino_ui.dart'; |
| Future<String> testBoolExtension(String name, Map<String, String> arguments) async { | ||
| expect(extensions, contains(name)); | ||
| // Encode and decode to JSON to match behavior using a real service | ||
| // extension where only JSON is allowed. | ||
| return (json.decode(json.encode(await extensions[name]!(arguments))) | ||
| as Map<String, dynamic>)['enabled'] | ||
| as String; | ||
| } |
There was a problem hiding this comment.
Sounds reasonable, though I know you just copied this code, so it's fine either way.
…er#188863) flutter/packages@274ed3e...e742106 2026-07-01 rmolivares@renzo-olivares.dev [cupertino_ui] Re-enable `tab_scaffold_test.dart` (flutter/packages#12064) 2026-07-01 jmccandless@google.com [material_ui] Port flutter/flutter flutter#184808 "Remove semantics_tester import from card_test.dart" (flutter/packages#11965) 2026-07-01 rmolivares@renzo-olivares.dev [cupertino_ui] Migrate `sliding_segmented_control_test.dart` to `SemanticsHandle` (flutter/packages#11979) 2026-07-01 rmolivares@renzo-olivares.dev [cupertino_ui] Migrate `route_test.dart` to `SemanticsHandle` (flutter/packages#11993) 2026-07-01 rmolivares@renzo-olivares.dev [cupertino_ui] Migrate `nav_bar_test.dart` to `SemanticsHandle` (flutter/packages#11980) 2026-07-01 rmolivares@renzo-olivares.dev [cupertino_ui] Migrate `segmented_control_test.dart` to `SemanticsHandle` (flutter/packages#11982) 2026-07-01 rmolivares@renzo-olivares.dev [cupertino_ui] Re-enable `text_field_test.dart` (flutter/packages#12067) 2026-06-30 r.anantheswar@gmail.com [camera_android_camerax] Pass targetVideoEncodingBitRate to Recorder (flutter/packages#11960) 2026-06-30 1063596+reidbaker@users.noreply.github.com [camera_android_camerax] Migrate check-readiness skill from bash to Dart (flutter/packages#11943) 2026-06-30 21270878+elliette@users.noreply.github.com [material_ui] Enable `time_picker_test` (flutter/packages#12061) 2026-06-30 36861262+QuncCccccc@users.noreply.github.com [cupertino_ui] Migrate checkbox_test.dart to SemanticsHandle (flutter/packages#12065) 2026-06-30 64674824+yashas-hm@users.noreply.github.com [image_picker] Handle limit: 1 in pickMultiImage and pickMultipleMedia gracefully (flutter/packages#11825) 2026-06-30 faheemabbas766@gmail.com [cross_file] Document native mimeType behavior (flutter/packages#11662) 2026-06-30 36861262+QuncCccccc@users.noreply.github.com [material_ui] Remove `image_data.dart` imports from `circle_avatar_test.dart`, `color_scheme_test.dart` (flutter/packages#12059) 2026-06-30 36861262+QuncCccccc@users.noreply.github.com [cupertino_ui] Remove `image_data.dart` import from `scaffold_test.dart` (flutter/packages#12060) 2026-06-30 36861262+QuncCccccc@users.noreply.github.com [cupertino_ui] Remove widgets import from menu_anchor_test.dart (flutter/packages#12068) 2026-06-30 21270878+elliette@users.noreply.github.com [material_ui] Enable `checkbox_list_tile_test` (flutter/packages#12007) 2026-06-30 louisehsu@google.com [in_app_purchase_storekit] Expose quantity in Transactions (flutter/packages#11879) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages-flutter-autoroll Please CC flutter-ecosystem@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
This test re-enables
tab_scaffold_test.dart, and brings overwidget_inspector_test_utils.dartintotests/.Pre-Review Checklist
[shared_preferences]///).