| 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 test.services.src.index.abstract_single_file; | 5 library test.services.src.index.abstract_single_file; |
| 6 | 6 |
| 7 import 'package:analysis_testing/abstract_context.dart'; | 7 import 'package:analysis_testing/abstract_context.dart'; |
| 8 import 'package:analyzer/src/generated/ast.dart'; | 8 import 'package:analyzer/src/generated/ast.dart'; |
| 9 import 'package:analyzer/src/generated/element.dart'; | 9 import 'package:analyzer/src/generated/element.dart'; |
| 10 import 'package:analyzer/src/generated/error.dart'; | 10 import 'package:analyzer/src/generated/error.dart'; |
| (...skipping 14 matching lines...) Expand all Loading... |
| 25 | 25 |
| 26 void assertNoErrorsInSource(Source source) { | 26 void assertNoErrorsInSource(Source source) { |
| 27 List<AnalysisError> errors = context.getErrors(source).errors; | 27 List<AnalysisError> errors = context.getErrors(source).errors; |
| 28 expect(errors, isEmpty); | 28 expect(errors, isEmpty); |
| 29 } | 29 } |
| 30 | 30 |
| 31 Element findElement(String name, [ElementKind kind]) { | 31 Element findElement(String name, [ElementKind kind]) { |
| 32 return findChildElement(testUnitElement, name, kind); | 32 return findChildElement(testUnitElement, name, kind); |
| 33 } | 33 } |
| 34 | 34 |
| 35 /** |
| 36 * Returns the [SimpleIdentifier] at the given search pattern. |
| 37 */ |
| 38 SimpleIdentifier findIdentifier(String search) { |
| 39 return findNodeAtString(search, (node) => node is SimpleIdentifier); |
| 40 } |
| 41 |
| 35 AstNode findNodeAtOffset(int offset, [Predicate<AstNode> predicate]) { | 42 AstNode findNodeAtOffset(int offset, [Predicate<AstNode> predicate]) { |
| 36 AstNode result = new NodeLocator.con1(offset).searchWithin(testUnit); | 43 AstNode result = new NodeLocator.con1(offset).searchWithin(testUnit); |
| 37 if (result != null && predicate != null) { | 44 if (result != null && predicate != null) { |
| 38 result = result.getAncestor(predicate); | 45 result = result.getAncestor(predicate); |
| 39 } | 46 } |
| 40 return result; | 47 return result; |
| 41 } | 48 } |
| 42 | 49 |
| 43 AstNode findNodeAtString(String search, [Predicate<AstNode> predicate]) { | 50 AstNode findNodeAtString(String search, [Predicate<AstNode> predicate]) { |
| 44 int offset = findOffset(search); | 51 int offset = findOffset(search); |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 85 testCode = code; | 92 testCode = code; |
| 86 testSource = addSource(testFile, code); | 93 testSource = addSource(testFile, code); |
| 87 testUnit = resolveLibraryUnit(testSource); | 94 testUnit = resolveLibraryUnit(testSource); |
| 88 if (verifyNoTestUnitErrors) { | 95 if (verifyNoTestUnitErrors) { |
| 89 assertNoErrorsInSource(testSource); | 96 assertNoErrorsInSource(testSource); |
| 90 } | 97 } |
| 91 testUnitElement = testUnit.element; | 98 testUnitElement = testUnit.element; |
| 92 testLibraryElement = testUnitElement.library; | 99 testLibraryElement = testUnitElement.library; |
| 93 } | 100 } |
| 94 } | 101 } |
| OLD | NEW |