Test for Flutter outline with named arguments anywhere.
Change-Id: I9e2df45ba04c0e02b2388029c2c3c56213ef9dc5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/233644
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
diff --git a/pkg/analysis_server/test/src/flutter/flutter_outline_computer_test.dart b/pkg/analysis_server/test/src/flutter/flutter_outline_computer_test.dart
index e55c554..e405c98 100644
--- a/pkg/analysis_server/test/src/flutter/flutter_outline_computer_test.dart
+++ b/pkg/analysis_server/test/src/flutter/flutter_outline_computer_test.dart
@@ -442,6 +442,46 @@
}
}
+ Future<void> test_namedArgument_anywhere() async {
+ newFile('$testPackageLibPath/a.dart', content: r'''
+import 'package:flutter/widgets.dart';
+
+class WidgetA extends StatelessWidget {
+ final Widget top;
+ final Widget bottom;
+ final Widget left;
+ final Widget right;
+
+ WidgetA(this.top, this.bottom, {this.left, this.right});
+}
+''');
+ var unitOutline = await _computeOutline('''
+import 'package:flutter/widgets.dart';
+import 'a.dart';
+
+class MyWidget extends StatelessWidget {
+ @override
+ Widget build(BuildContext context) {
+ return new WidgetA(
+ const Container(),
+ left: const Text('left'),
+ const Flex(),
+ right: const Text('right'),
+ );
+ }
+}
+''');
+ expect(_toText(unitOutline), r'''
+(D) MyWidget
+ (D) build
+ WidgetA
+ Container
+ left: Text
+ Flex
+ right: Text
+''');
+ }
+
Future<void> test_parentAssociationLabel() async {
newFile('$testPackageLibPath/a.dart', content: r'''
import 'package:flutter/widgets.dart';