| OLD | NEW |
| 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 test.src.task.dart_test; | 5 library test.src.task.dart_test; |
| 6 | 6 |
| 7 import 'package:analyzer/src/context/cache.dart'; | 7 import 'package:analyzer/src/context/cache.dart'; |
| 8 import 'package:analyzer/src/generated/ast.dart'; | 8 import 'package:analyzer/src/generated/ast.dart'; |
| 9 import 'package:analyzer/src/generated/constant.dart'; | 9 import 'package:analyzer/src/generated/constant.dart'; |
| 10 import 'package:analyzer/src/generated/element.dart'; | 10 import 'package:analyzer/src/generated/element.dart'; |
| (...skipping 1477 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1488 // When there is a circularity, all elements in the strongly connected | 1488 // When there is a circularity, all elements in the strongly connected |
| 1489 // component should be marked as having an error. | 1489 // component should be marked as having an error. |
| 1490 _checkCircularities('a', ['b', 'c', 'd'], ''' | 1490 _checkCircularities('a', ['b', 'c', 'd'], ''' |
| 1491 const a = b; | 1491 const a = b; |
| 1492 const b = c + d; | 1492 const b = c + d; |
| 1493 const c = a; | 1493 const c = a; |
| 1494 const d = a; | 1494 const d = a; |
| 1495 '''); | 1495 '''); |
| 1496 } | 1496 } |
| 1497 | 1497 |
| 1498 test_const_constructor_calls_implicit_super_constructor_implicitly() { |
| 1499 // Note: the situation below is a compile-time error (since the synthetic |
| 1500 // constructor for Base is non-const), but we need to handle it without |
| 1501 // throwing an exception. |
| 1502 EvaluationResultImpl evaluationResult = _computeTopLevelVariableConstValue( |
| 1503 'x', ''' |
| 1504 class Base {} |
| 1505 class Derived extends Base { |
| 1506 const Derived(); |
| 1507 } |
| 1508 const x = const Derived(); |
| 1509 '''); |
| 1510 expect(evaluationResult, isNotNull); |
| 1511 } |
| 1512 |
| 1498 test_dependency() { | 1513 test_dependency() { |
| 1499 EvaluationResultImpl evaluationResult = _computeTopLevelVariableConstValue( | 1514 EvaluationResultImpl evaluationResult = _computeTopLevelVariableConstValue( |
| 1500 'x', ''' | 1515 'x', ''' |
| 1501 const x = y + 1; | 1516 const x = y + 1; |
| 1502 const y = 1; | 1517 const y = 1; |
| 1503 '''); | 1518 '''); |
| 1504 expect(evaluationResult, isNotNull); | 1519 expect(evaluationResult, isNotNull); |
| 1505 expect(evaluationResult.value, isNotNull); | 1520 expect(evaluationResult.value, isNotNull); |
| 1506 expect(evaluationResult.value.intValue, 2); | 1521 expect(evaluationResult.value.intValue, 2); |
| 1507 } | 1522 } |
| (...skipping 1146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2654 /** | 2669 /** |
| 2655 * Fill [errorListener] with [result] errors in the current [task]. | 2670 * Fill [errorListener] with [result] errors in the current [task]. |
| 2656 */ | 2671 */ |
| 2657 void _fillErrorListener(ResultDescriptor<List<AnalysisError>> result) { | 2672 void _fillErrorListener(ResultDescriptor<List<AnalysisError>> result) { |
| 2658 List<AnalysisError> errors = task.outputs[result]; | 2673 List<AnalysisError> errors = task.outputs[result]; |
| 2659 expect(errors, isNotNull, reason: result.name); | 2674 expect(errors, isNotNull, reason: result.name); |
| 2660 errorListener = new GatheringErrorListener(); | 2675 errorListener = new GatheringErrorListener(); |
| 2661 errorListener.addAll(errors); | 2676 errorListener.addAll(errors); |
| 2662 } | 2677 } |
| 2663 } | 2678 } |
| OLD | NEW |