Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(542)

Unified Diff: pkg/analyzer/test/src/context/context_test.dart

Issue 2229603003: Extract unresolved AST parsing (PARSED_UNIT1) from full parsing, which includes UriBasedDirective(s… (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Update task graph. Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pkg/analyzer/test/src/context/context_test.dart
diff --git a/pkg/analyzer/test/src/context/context_test.dart b/pkg/analyzer/test/src/context/context_test.dart
index 988db569fa3a0375ee004bc23552fba47fed4ad6..63c6703daff07c0dec86245a095ca296b5e4e215 100644
--- a/pkg/analyzer/test/src/context/context_test.dart
+++ b/pkg/analyzer/test/src/context/context_test.dart
@@ -155,6 +155,43 @@ class AnalysisContextImplTest extends AbstractContextTest {
expect(entry.explicitlyAdded, isTrue);
}
+ void test_applyChanges_addNewImport_invalidateLibraryCycle() {
+ context.analysisOptions =
+ new AnalysisOptionsImpl.from(context.analysisOptions)
+ ..strongMode = true;
+ Source embedder = addSource(
+ '/a.dart',
+ r'''
+library a;
+import 'b.dart';
+//import 'c.dart';
+''');
+ addSource(
+ '/b.dart',
+ r'''
+library b;
+import 'a.dart';
+''');
+ addSource(
+ '/c.dart',
+ r'''
+library c;
+import 'b.dart';
+''');
+ _performPendingAnalysisTasks();
+ // Add a new import into a.dart, this should invalidate its library cycle.
+ // If it doesn't, we will get a task cycle exception.
+ context.setContents(
+ embedder,
+ r'''
+library a;
+import 'b.dart';
+import 'c.dart';
+''');
+ _performPendingAnalysisTasks();
+ expect(context.getCacheEntry(embedder).exception, isNull);
+ }
+
Future test_applyChanges_change() {
SourcesChangedListener listener = new SourcesChangedListener();
context.onSourcesChanged.listen(listener.onData);
@@ -487,43 +524,6 @@ class B {}
expect(context.getErrors(a).errors, hasLength(0));
}
- void test_applyChanges_addNewImport_invalidateLibraryCycle() {
- context.analysisOptions =
- new AnalysisOptionsImpl.from(context.analysisOptions)
- ..strongMode = true;
- Source embedder = addSource(
- '/a.dart',
- r'''
-library a;
-import 'b.dart';
-//import 'c.dart';
-''');
- addSource(
- '/b.dart',
- r'''
-library b;
-import 'a.dart';
-''');
- addSource(
- '/c.dart',
- r'''
-library c;
-import 'b.dart';
-''');
- _performPendingAnalysisTasks();
- // Add a new import into a.dart, this should invalidate its library cycle.
- // If it doesn't, we will get a task cycle exception.
- context.setContents(
- embedder,
- r'''
-library a;
-import 'b.dart';
-import 'c.dart';
-''');
- _performPendingAnalysisTasks();
- expect(context.getCacheEntry(embedder).exception, isNull);
- }
-
void test_cacheConsistencyValidator_computed_deleted() {
CacheConsistencyValidator validator = context.cacheConsistencyValidator;
var stat = PerformanceStatistics.cacheConsistencyValidationStatistics;
@@ -2299,7 +2299,7 @@ library expectedToFindSemicolon
Source librarySource = event.target;
libraryElementUris.add(librarySource.uri.toString());
});
- context.onResultChanged(PARSED_UNIT).listen((event) {
+ context.onResultChanged(PARSED_UNIT1).listen((event) {
expect(event.wasComputed, isTrue);
expect(event.wasInvalidated, isFalse);
Source source = event.target;
@@ -3750,6 +3750,7 @@ main() {
MethodInvocation invocation = statement.expression;
return invocation.argumentList.arguments[0];
}
+
{
Expression argument = find42();
expect(argument.staticParameterElement, isNull);
@@ -4983,6 +4984,8 @@ class A {
void _assertValidForAnyLibrary(Source source) {
// Source results.
_assertValidTaskResults(source, ScanDartTask.DESCRIPTOR);
+ _assertValidTaskResults(source, ParseDartTask.DESCRIPTOR);
+ _assertValidTaskResults(source, ResolveDirectivesTask.DESCRIPTOR);
// Library results.
_assertValidTaskResults(source, BuildLibraryElementTask.DESCRIPTOR);
_assertValidTaskResults(source, BuildDirectiveElementsTask.DESCRIPTOR);
« no previous file with comments | « pkg/analyzer/test/generated/incremental_resolver_test.dart ('k') | pkg/analyzer/test/src/task/dart_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698