-
Notifications
You must be signed in to change notification settings - Fork 3.3k
[go_router_builder] Support default value for Set
, List
and Iterable
route parameters
#3391
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
[go_router_builder] Support default value for Set
, List
and Iterable
route parameters
#3391
Conversation
dab2e72
to
8f04735
Compare
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 Code LGTM, can you add a test in example/test to make sure thing works as expected if navigate to the route with default value?
…le-parameters # Conflicts: # packages/go_router_builder/CHANGELOG.md
@chunhtai I added a test in test: Add a test in example with default values but I'm not very proud of it. Do you have a better idea? |
@@ -136,4 +136,24 @@ void main() { | |||
'/iterable-route?int-list-field=1&int-list-field=2&int-list-field=3'), | |||
findsOneWidget); | |||
}); | |||
|
|||
testWidgets( | |||
'It should navigate to the iterable route with the its default values', |
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.
'It should navigate to the iterable route with the its default values', | |
'It should navigate to the iterable route with its default values', |
final Set<SportDetails> enumSetField; | ||
|
||
@override | ||
Widget build(BuildContext context, GoRouterState state) => BasePage<String>( |
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.
Maybe build a widget that holds all these parameter as its property, and then you can use tester.widget<>(find.byType)
to get the widget and then you can compare the value of each property in the widget.
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.
I've implemented it in test: Add better tests
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.
LGTM
…efault-values-with-iterable-parameters # Conflicts: # packages/go_router_builder/CHANGELOG.md # packages/go_router_builder/test/builder_test.dart # packages/go_router_builder/test/test_inputs/_go_router_builder_test_input.dart
…efault-values-with-iterable-parameters
@Hangyujin Is there anything I should do on this PR? |
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.
LGTM
…nd `Iterable` route parameters (flutter/packages#3391)
…nd `Iterable` route parameters (flutter/packages#3391)
…nd `Iterable` route parameters (flutter/packages#3391)
* 7636eb7 [go_router_builder] Support default value for `Set`, `List` and `Iterable` route parameters (flutter/packages#3391) * 26c95da [image_picker] Move HashSet construction within if-statement (flutter/packages#3448) * f5687b2 [image_picker] fix typos in comments (flutter/packages#3413) * 84afba7 [image_picker] Migrate Android to Pigeon (flutter/packages#3476) * 42927fc [image_picker]: Bump androidx.exifinterface:exifinterface from 1.3.3 to 1.3.6 in /packages/image_picker/image_picker_android/android (flutter/packages#3238) * 9a44bdf Require Dart SDK 2.14, because of using APIs. (flutter/packages#3468) * 12609a2 [ci] Clean up iOS simulators (flutter/packages#3458) * 9b136a9 [ci/tool] Add external dependency validation (flutter/packages#3466) * 11aab47 Manual roll Flutter from fb7e828 to 67e5f66 (8 revisions) (flutter/packages#3482) * 784291b Update goldens (flutter/packages#3442) * 43a42d1 [webview_flutter_android] Updates Dart and Java InstanceManagers (flutter/packages#3282) * d0de136 [camera] Reland android flip/change camera while recording (flutter/packages#3460) * 74fd094 [image_picker_android] Adjust file extension in FileUtils when it does not match its mime type (flutter/packages#3409) * d2f1d2d [flutter_adaptive_scaffold] : 🐛 [FIX] : Issue: 121135. (flutter/packages#3253) * 3d078b5 Roll Flutter from 67e5f66 to 53dfd23 (39 revisions) (flutter/packages#3484) * 3b3a09d [url_launcher] Convert iOS to Pigeon (flutter/packages#3481) * 80cd50a Roll Flutter from 53dfd23 to 6bd2b3c (17 revisions) (flutter/packages#3486) * 998bb29 [webview_flutter] Updates the README with the migration of `WebView.initialCookies` and Hybrid Composition on (flutter/packages#3470) * bbf86a7 Roll Flutter from 6bd2b3c to 3e4e092 (7 revisions) (flutter/packages#3490)
…able` route parameters (flutter#3391) [go_router_builder] Support default value for `Set`, `List` and `Iterable` route parameters
Fixes: flutter/flutter#122003
Pre-launch Checklist
dart format
.)[shared_preferences]
pubspec.yaml
with an appropriate new version according to the pub versioning philosophy, or this PR is exempt from version changes.CHANGELOG.md
to add a description of the change, following repository CHANGELOG style.///
).If you need help, consider asking for advice on the #hackers-new channel on Discord.