| Index: pkg/analysis_server/test/services/completion/dart/optype_test.dart
|
| diff --git a/pkg/analysis_server/test/services/completion/dart/optype_test.dart b/pkg/analysis_server/test/services/completion/dart/optype_test.dart
|
| index 5bfcefa097e720271a71bd731a83086629544f05..15fcb8725782552a4462fc3e6df298168fc56208 100644
|
| --- a/pkg/analysis_server/test/services/completion/dart/optype_test.dart
|
| +++ b/pkg/analysis_server/test/services/completion/dart/optype_test.dart
|
| @@ -375,6 +375,122 @@ class OpTypeTest {
|
| assertOpType(returnValue: true, typeNames: true, voidReturn: true);
|
| }
|
|
|
| + test_Block_catch_1a() async {
|
| + // '}' Block BlockFunctionBody FunctionExpression
|
| + addTestSource('main() {try {} ^}');
|
| + // Only return 'on', 'catch', and 'finally' keywords
|
| + assertOpType();
|
| + }
|
| +
|
| + test_Block_catch_1b() async {
|
| + // [ExpressionStatement 'c'] Block BlockFunctionBody
|
| + addTestSource('main() {try {} c^}');
|
| + // Only return 'on', 'catch', and 'finally' keywords
|
| + assertOpType();
|
| + }
|
| +
|
| + test_Block_catch_1c() async {
|
| + // [EmptyStatement] Block BlockFunctionBody FunctionExpression
|
| + addTestSource('main() {try {} ^;}');
|
| + // Only return 'on', 'catch', and 'finally' keywords
|
| + assertOpType();
|
| + }
|
| +
|
| + test_Block_catch_1d() async {
|
| + // [VariableDeclarationStatement 'Foo foo'] Block BlockFunctionBody
|
| + addTestSource('main() {try {} ^ Foo foo;}');
|
| + // Only return 'on', 'catch', and 'finally' keywords
|
| + assertOpType();
|
| + }
|
| +
|
| + test_Block_catch_2a() async {
|
| + // '}' Block BlockFunctionBody FunctionExpression
|
| + addTestSource('main() {try {} catch () {} ^}');
|
| + assertOpType(returnValue: true, typeNames: true, voidReturn: true);
|
| + }
|
| +
|
| + test_Block_catch_2b() async {
|
| + // [ExpressionStatement 'c'] Block BlockFunctionBody
|
| + addTestSource('main() {try {} catch () {} c^}');
|
| + assertOpType(returnValue: true, typeNames: true, voidReturn: true);
|
| + }
|
| +
|
| + test_Block_catch_2c() async {
|
| + // [EmptyStatement] Block BlockFunctionBody FunctionExpression
|
| + addTestSource('main() {try {} catch () {} ^;}');
|
| + assertOpType(returnValue: true, typeNames: true, voidReturn: true);
|
| + }
|
| +
|
| + test_Block_catch_2d() async {
|
| + // [VariableDeclarationStatement 'Foo foo'] Block BlockFunctionBody
|
| + addTestSource('main() {try {} catch () {} ^ Foo foo;}');
|
| + assertOpType(returnValue: true, typeNames: true, voidReturn: true);
|
| + }
|
| +
|
| + test_Block_catch_3a() async {
|
| + // '}' Block BlockFunctionBody FunctionExpression
|
| + addTestSource('main() {try {} finally {} ^}');
|
| + assertOpType(returnValue: true, typeNames: true, voidReturn: true);
|
| + }
|
| +
|
| + test_Block_catch_3b() async {
|
| + // [ExpressionStatement 'c'] Block BlockFunctionBody
|
| + addTestSource('main() {try {} finally {} c^}');
|
| + assertOpType(returnValue: true, typeNames: true, voidReturn: true);
|
| + }
|
| +
|
| + test_Block_catch_3c() async {
|
| + // [EmptyStatement] Block BlockFunctionBody FunctionExpression
|
| + addTestSource('main() {try {} finally {} ^;}');
|
| + assertOpType(returnValue: true, typeNames: true, voidReturn: true);
|
| + }
|
| +
|
| + test_Block_catch_3d() async {
|
| + // [VariableDeclarationStatement 'Foo foo'] Block BlockFunctionBody
|
| + addTestSource('main() {try {} finally {} ^ Foo foo;}');
|
| + assertOpType(returnValue: true, typeNames: true, voidReturn: true);
|
| + }
|
| +
|
| + test_catch_4a1() async {
|
| + addTestSource('main() {try {} ^ on SomeException {}}');
|
| + assertOpType();
|
| + }
|
| +
|
| + test_catch_4a2() async {
|
| + addTestSource('main() {try {} c^ on SomeException {}}');
|
| + assertOpType();
|
| + }
|
| +
|
| + test_catch_4b1() async {
|
| + addTestSource('main() {try {} ^ catch (e) {}}');
|
| + assertOpType();
|
| + }
|
| +
|
| + test_catch_4b2() async {
|
| + addTestSource('main() {try {} c^ catch (e) {}}');
|
| + assertOpType();
|
| + }
|
| +
|
| + test_catch_4c1() async {
|
| + addTestSource('main() {try {} ^ finally {}}');
|
| + assertOpType();
|
| + }
|
| +
|
| + test_catch_4c2() async {
|
| + addTestSource('main() {try {} c^ finally {}}');
|
| + assertOpType();
|
| + }
|
| +
|
| + test_catch_5a() async {
|
| + addTestSource('main() {try {} on ^ finally {}}');
|
| + assertOpType(typeNames: true);
|
| + }
|
| +
|
| + test_catch_5b() async {
|
| + addTestSource('main() {try {} on E^ finally {}}');
|
| + assertOpType(typeNames: true);
|
| + }
|
| +
|
| test_Block_empty() {
|
| // Block BlockFunctionBody MethodDeclaration ClassDeclaration
|
| addTestSource('class A extends E implements I with M {a() {^}}');
|
|
|