| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 library engine.non_error_resolver_test; | 5 library engine.non_error_resolver_test; |
| 6 | 6 |
| 7 import 'package:analyzer/src/generated/ast.dart'; | 7 import 'package:analyzer/src/generated/ast.dart'; |
| 8 import 'package:analyzer/src/generated/element.dart'; | 8 import 'package:analyzer/src/generated/element.dart'; |
| 9 import 'package:analyzer/src/generated/engine.dart'; | 9 import 'package:analyzer/src/generated/engine.dart'; |
| 10 import 'package:analyzer/src/generated/error.dart'; | 10 import 'package:analyzer/src/generated/error.dart'; |
| (...skipping 2354 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2365 void test_invalidAssignment_defaultValue_optional() { | 2365 void test_invalidAssignment_defaultValue_optional() { |
| 2366 Source source = addSource(r''' | 2366 Source source = addSource(r''' |
| 2367 f([String x = '0']) { | 2367 f([String x = '0']) { |
| 2368 }'''); | 2368 }'''); |
| 2369 computeLibrarySourceErrors(source); | 2369 computeLibrarySourceErrors(source); |
| 2370 assertNoErrors(source); | 2370 assertNoErrors(source); |
| 2371 verify([source]); | 2371 verify([source]); |
| 2372 } | 2372 } |
| 2373 | 2373 |
| 2374 void test_invalidAssignment_ifNullAssignment_compatibleType() { | 2374 void test_invalidAssignment_ifNullAssignment_compatibleType() { |
| 2375 AnalysisOptionsImpl options = new AnalysisOptionsImpl(); | |
| 2376 options.enableNullAwareOperators = true; | |
| 2377 resetWithOptions(options); | |
| 2378 Source source = addSource(''' | 2375 Source source = addSource(''' |
| 2379 void f(int i) { | 2376 void f(int i) { |
| 2380 num n; | 2377 num n; |
| 2381 n ??= i; | 2378 n ??= i; |
| 2382 } | 2379 } |
| 2383 '''); | 2380 '''); |
| 2384 computeLibrarySourceErrors(source); | 2381 computeLibrarySourceErrors(source); |
| 2385 assertNoErrors(source); | 2382 assertNoErrors(source); |
| 2386 verify([source]); | 2383 verify([source]); |
| 2387 } | 2384 } |
| 2388 | 2385 |
| 2389 void test_invalidAssignment_ifNullAssignment_sameType() { | 2386 void test_invalidAssignment_ifNullAssignment_sameType() { |
| 2390 AnalysisOptionsImpl options = new AnalysisOptionsImpl(); | |
| 2391 options.enableNullAwareOperators = true; | |
| 2392 resetWithOptions(options); | |
| 2393 Source source = addSource(''' | 2387 Source source = addSource(''' |
| 2394 void f(int i) { | 2388 void f(int i) { |
| 2395 int j; | 2389 int j; |
| 2396 j ??= i; | 2390 j ??= i; |
| 2397 } | 2391 } |
| 2398 '''); | 2392 '''); |
| 2399 computeLibrarySourceErrors(source); | 2393 computeLibrarySourceErrors(source); |
| 2400 assertNoErrors(source); | 2394 assertNoErrors(source); |
| 2401 verify([source]); | 2395 verify([source]); |
| 2402 } | 2396 } |
| (...skipping 2601 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5004 Bar.ctor() : super.ctor(); | 4998 Bar.ctor() : super.ctor(); |
| 5005 }'''); | 4999 }'''); |
| 5006 computeLibrarySourceErrors(source); | 5000 computeLibrarySourceErrors(source); |
| 5007 assertNoErrors(source); | 5001 assertNoErrors(source); |
| 5008 verify([source]); | 5002 verify([source]); |
| 5009 } | 5003 } |
| 5010 | 5004 |
| 5011 void test_undefinedGetter_typeLiteral_conditionalAccess() { | 5005 void test_undefinedGetter_typeLiteral_conditionalAccess() { |
| 5012 // When applied to a type literal, the conditional access operator '?.' can | 5006 // When applied to a type literal, the conditional access operator '?.' can |
| 5013 // be used to access instance getters of Type. | 5007 // be used to access instance getters of Type. |
| 5014 AnalysisOptionsImpl options = new AnalysisOptionsImpl(); | |
| 5015 options.enableNullAwareOperators = true; | |
| 5016 resetWithOptions(options); | |
| 5017 Source source = addSource(''' | 5008 Source source = addSource(''' |
| 5018 class A {} | 5009 class A {} |
| 5019 f() => A?.hashCode; | 5010 f() => A?.hashCode; |
| 5020 '''); | 5011 '''); |
| 5021 computeLibrarySourceErrors(source); | 5012 computeLibrarySourceErrors(source); |
| 5022 assertNoErrors(source); | 5013 assertNoErrors(source); |
| 5023 verify([source]); | 5014 verify([source]); |
| 5024 } | 5015 } |
| 5025 | 5016 |
| 5026 void test_undefinedGetter_typeSubstitution() { | 5017 void test_undefinedGetter_typeSubstitution() { |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5094 (() => null)(); | 5085 (() => null)(); |
| 5095 }'''); | 5086 }'''); |
| 5096 computeLibrarySourceErrors(source); | 5087 computeLibrarySourceErrors(source); |
| 5097 assertNoErrors(source); | 5088 assertNoErrors(source); |
| 5098 // A call to verify(source) fails as '(() => null)()' isn't resolved. | 5089 // A call to verify(source) fails as '(() => null)()' isn't resolved. |
| 5099 } | 5090 } |
| 5100 | 5091 |
| 5101 void test_undefinedMethod_typeLiteral_conditionalAccess() { | 5092 void test_undefinedMethod_typeLiteral_conditionalAccess() { |
| 5102 // When applied to a type literal, the conditional access operator '?.' can | 5093 // When applied to a type literal, the conditional access operator '?.' can |
| 5103 // be used to access instance methods of Type. | 5094 // be used to access instance methods of Type. |
| 5104 AnalysisOptionsImpl options = new AnalysisOptionsImpl(); | |
| 5105 options.enableNullAwareOperators = true; | |
| 5106 resetWithOptions(options); | |
| 5107 Source source = addSource(''' | 5095 Source source = addSource(''' |
| 5108 class A {} | 5096 class A {} |
| 5109 f() => A?.toString(); | 5097 f() => A?.toString(); |
| 5110 '''); | 5098 '''); |
| 5111 computeLibrarySourceErrors(source); | 5099 computeLibrarySourceErrors(source); |
| 5112 assertNoErrors(source); | 5100 assertNoErrors(source); |
| 5113 verify([source]); | 5101 verify([source]); |
| 5114 } | 5102 } |
| 5115 | 5103 |
| 5116 void test_undefinedOperator_index() { | 5104 void test_undefinedOperator_index() { |
| (...skipping 413 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5530 reset(); | 5518 reset(); |
| 5531 } | 5519 } |
| 5532 | 5520 |
| 5533 void _check_wrongNumberOfParametersForOperator1(String name) { | 5521 void _check_wrongNumberOfParametersForOperator1(String name) { |
| 5534 _check_wrongNumberOfParametersForOperator(name, "a"); | 5522 _check_wrongNumberOfParametersForOperator(name, "a"); |
| 5535 } | 5523 } |
| 5536 | 5524 |
| 5537 CompilationUnit _getResolvedLibraryUnit(Source source) => | 5525 CompilationUnit _getResolvedLibraryUnit(Source source) => |
| 5538 analysisContext.getResolvedCompilationUnit2(source, source); | 5526 analysisContext.getResolvedCompilationUnit2(source, source); |
| 5539 } | 5527 } |
| OLD | NEW |