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

Unified Diff: pkg/analysis_server/test/src/utilities/change_builder_dart_test.dart

Issue 2688513003: Update ChangeBuilder to the new driver (Closed)
Patch Set: addressed comments Created 3 years, 10 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
« no previous file with comments | « pkg/analysis_server/test/src/utilities/change_builder_core_test.dart ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analysis_server/test/src/utilities/change_builder_dart_test.dart
diff --git a/pkg/analysis_server/test/src/utilities/change_builder_dart_test.dart b/pkg/analysis_server/test/src/utilities/change_builder_dart_test.dart
index 4e88aec0b984c84e9cee16cd543ba9f23e15f682..b549f7a008f27796b27648537b3a3500c2c6dfe9 100644
--- a/pkg/analysis_server/test/src/utilities/change_builder_dart_test.dart
+++ b/pkg/analysis_server/test/src/utilities/change_builder_dart_test.dart
@@ -2,8 +2,6 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
-library analysis_server.test.src.utilities.change_builder_dart_test;
-
import 'package:analysis_server/plugin/protocol/protocol.dart';
import 'package:analysis_server/src/provisional/edit/utilities/change_builder_core.dart';
import 'package:analysis_server/src/provisional/edit/utilities/change_builder_dart.dart';
@@ -11,7 +9,7 @@ import 'package:analysis_server/src/utilities/change_builder_dart.dart';
import 'package:analyzer/dart/ast/ast.dart';
import 'package:analyzer/dart/ast/standard_resolution_map.dart';
import 'package:analyzer/dart/element/element.dart';
-import 'package:analyzer/src/generated/source.dart';
+import 'package:analyzer/dart/element/type.dart';
import 'package:test/test.dart';
import 'package:test_reflective_loader/test_reflective_loader.dart';
@@ -27,22 +25,28 @@ main() {
@reflectiveTest
class DartChangeBuilderImplTest extends AbstractContextTest {
+ @override
+ bool get enableNewAnalysisDriver => true;
+
test_createFileEditBuilder() async {
- Source source = addSource('/test.dart', 'library test;');
- await resolveLibraryUnit(source);
+ String path = '/test.dart';
+ addSource(path, 'library test;');
int timeStamp = 54;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
DartFileEditBuilderImpl fileEditBuilder =
- builder.createFileEditBuilder(source, timeStamp);
+ await builder.createFileEditBuilder(path, timeStamp);
expect(fileEditBuilder, new isInstanceOf<DartFileEditBuilder>());
SourceFileEdit fileEdit = fileEditBuilder.fileEdit;
- expect(fileEdit.file, source.fullName);
+ expect(fileEdit.file, path);
expect(fileEdit.fileStamp, timeStamp);
}
}
@reflectiveTest
class DartEditBuilderImplTest extends AbstractContextTest {
+ @override
+ bool get enableNewAnalysisDriver => true;
+
SourceEdit getEdit(DartChangeBuilderImpl builder) {
SourceChange sourceChange = builder.sourceChange;
expect(sourceChange, isNotNull);
@@ -56,16 +60,15 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeClassDeclaration_interfaces() async {
- Source source = addSource('/test.dart', 'class A {}');
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration declaration = unit.declarations[0];
+ String path = '/test.dart';
+ addSource(path, 'class A {}');
+ DartType typeA = (await driver.getUnitElement(path)).getType('A').type;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(0, (EditBuilder builder) {
- (builder as DartEditBuilder).writeClassDeclaration('C', interfaces: [
- resolutionMap.elementDeclaredByClassDeclaration(declaration).type
- ]);
+ (builder as DartEditBuilder)
+ .writeClassDeclaration('C', interfaces: [typeA]);
});
});
SourceEdit edit = getEdit(builder);
@@ -74,11 +77,11 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeClassDeclaration_isAbstract() async {
- Source source = addSource('/test.dart', '');
- await resolveLibraryUnit(source);
+ String path = '/test.dart';
+ addSource(path, '');
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(0, (EditBuilder builder) {
(builder as DartEditBuilder)
.writeClassDeclaration('C', isAbstract: true);
@@ -89,11 +92,11 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeClassDeclaration_memberWriter() async {
- Source source = addSource('/test.dart', '');
- await resolveLibraryUnit(source);
+ String path = '/test.dart';
+ addSource(path, '');
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(0, (EditBuilder builder) {
(builder as DartEditBuilder).writeClassDeclaration('C',
memberWriter: () {
@@ -106,16 +109,15 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeClassDeclaration_mixins_noSuperclass() async {
- Source source = addSource('/test.dart', 'class A {}');
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration classA = unit.declarations[0];
+ String path = '/test.dart';
+ addSource(path, 'class A {}');
+ DartType typeA = (await driver.getUnitElement(path)).getType('A').type;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(0, (EditBuilder builder) {
- (builder as DartEditBuilder).writeClassDeclaration('C', mixins: [
- resolutionMap.elementDeclaredByClassDeclaration(classA).type
- ]);
+ (builder as DartEditBuilder)
+ .writeClassDeclaration('C', mixins: [typeA]);
});
});
SourceEdit edit = getEdit(builder);
@@ -124,20 +126,16 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeClassDeclaration_mixins_superclass() async {
- Source source = addSource('/test.dart', 'class A {} class B {}');
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration classA = unit.declarations[0];
- ClassDeclaration classB = unit.declarations[1];
+ String path = '/test.dart';
+ addSource(path, 'class A {} class B {}');
+ DartType typeA = (await driver.getUnitElement(path)).getType('A').type;
+ DartType typeB = (await driver.getUnitElement(path)).getType('B').type;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(0, (EditBuilder builder) {
- (builder as DartEditBuilder).writeClassDeclaration('C',
- mixins: [
- resolutionMap.elementDeclaredByClassDeclaration(classB).type
- ],
- superclass:
- resolutionMap.elementDeclaredByClassDeclaration(classA).type);
+ (builder as DartEditBuilder)
+ .writeClassDeclaration('C', mixins: [typeB], superclass: typeA);
});
});
SourceEdit edit = getEdit(builder);
@@ -146,11 +144,11 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeClassDeclaration_nameGroupName() async {
- Source source = addSource('/test.dart', '');
- await resolveLibraryUnit(source);
+ String path = '/test.dart';
+ addSource(path, '');
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(0, (EditBuilder builder) {
(builder as DartEditBuilder)
.writeClassDeclaration('C', nameGroupName: 'name');
@@ -168,17 +166,15 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeClassDeclaration_superclass() async {
- Source source = addSource('/test.dart', 'class B {}');
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration declaration = unit.declarations[0];
+ String path = '/test.dart';
+ addSource(path, 'class B {}');
+ DartType typeB = (await driver.getUnitElement(path)).getType('B').type;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(0, (EditBuilder builder) {
- (builder as DartEditBuilder).writeClassDeclaration('C',
- superclass: resolutionMap
- .elementDeclaredByClassDeclaration(declaration)
- .type);
+ (builder as DartEditBuilder)
+ .writeClassDeclaration('C', superclass: typeB);
});
});
SourceEdit edit = getEdit(builder);
@@ -186,12 +182,12 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeFieldDeclaration_initializerWriter() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- await resolveLibraryUnit(source);
+ addSource(path, content);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder).writeFieldDeclaration('f',
initializerWriter: () {
@@ -204,12 +200,12 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeFieldDeclaration_isConst() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- await resolveLibraryUnit(source);
+ addSource(path, content);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder).writeFieldDeclaration('f', isConst: true);
});
@@ -219,12 +215,12 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeFieldDeclaration_isConst_isFinal() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- await resolveLibraryUnit(source);
+ addSource(path, content);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder)
.writeFieldDeclaration('f', isConst: true, isFinal: true);
@@ -235,12 +231,12 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeFieldDeclaration_isFinal() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- await resolveLibraryUnit(source);
+ addSource(path, content);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder).writeFieldDeclaration('f', isFinal: true);
});
@@ -250,12 +246,12 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeFieldDeclaration_isStatic() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- await resolveLibraryUnit(source);
+ addSource(path, content);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder).writeFieldDeclaration('f', isStatic: true);
});
@@ -265,12 +261,12 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeFieldDeclaration_nameGroupName() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- await resolveLibraryUnit(source);
+ addSource(path, content);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder)
.writeFieldDeclaration('f', nameGroupName: 'name');
@@ -290,19 +286,16 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeFieldDeclaration_type_typeGroupName() async {
+ String path = '/test.dart';
String content = 'class A {} class B {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration declaration = unit.declarations[0];
+ addSource(path, content);
+ DartType typeA = (await driver.getUnitElement(path)).getType('A').type;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
- (builder as DartEditBuilder).writeFieldDeclaration('f',
- type: resolutionMap
- .elementDeclaredByClassDeclaration(declaration)
- .type,
- typeGroupName: 'type');
+ (builder as DartEditBuilder)
+ .writeFieldDeclaration('f', type: typeA, typeGroupName: 'type');
});
});
SourceEdit edit = getEdit(builder);
@@ -319,12 +312,12 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeGetterDeclaration_bodyWriter() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- await resolveLibraryUnit(source);
+ addSource(path, content);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder).writeGetterDeclaration('g',
bodyWriter: () {
@@ -337,12 +330,12 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeGetterDeclaration_isStatic() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- await resolveLibraryUnit(source);
+ addSource(path, content);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder)
.writeGetterDeclaration('g', isStatic: true);
@@ -353,12 +346,12 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeGetterDeclaration_nameGroupName() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- await resolveLibraryUnit(source);
+ addSource(path, content);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder)
.writeGetterDeclaration('g', nameGroupName: 'name');
@@ -378,18 +371,16 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeGetterDeclaration_returnType() async {
+ String path = '/test.dart';
String content = 'class A {} class B {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration classA = unit.declarations[0];
+ addSource(path, content);
+ DartType typeA = (await driver.getUnitElement(path)).getType('A').type;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder).writeGetterDeclaration('g',
- returnType:
- resolutionMap.elementDeclaredByClassDeclaration(classA).type,
- returnTypeGroupName: 'returnType');
+ returnType: typeA, returnTypeGroupName: 'returnType');
});
});
SourceEdit edit = getEdit(builder);
@@ -406,23 +397,21 @@ class DartEditBuilderImplTest extends AbstractContextTest {
}
test_writeOverrideOfInheritedMember() async {
+ String path = '/test.dart';
String content = '''
class A {
A add(A a) => null;
}
class B extends A {
}''';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration declaration = unit.declarations[0];
+ addSource(path, content);
+ ClassElement classA = (await driver.getUnitElement(path)).getType('A');
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
- (builder as DartEditBuilder).writeOverrideOfInheritedMember(
- resolutionMap
- .elementDeclaredByClassDeclaration(declaration)
- .methods[0]);
+ (builder as DartEditBuilder)
+ .writeOverrideOfInheritedMember(classA.methods[0]);
});
});
SourceEdit edit = getEdit(builder);
@@ -435,16 +424,17 @@ A add(A a) {
}
test_writeParameters_named() async {
+ String path = '/test.dart';
String content = 'f(int i, {String s}) {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
+ addSource(path, content);
+ CompilationUnit unit = (await driver.getResult(path))?.unit;
FunctionDeclaration f = unit.declarations[0];
FormalParameterList parameters = f.functionExpression.parameters;
Iterable<ParameterElement> elements = parameters.parameters
.map(resolutionMap.elementDeclaredByFormalParameter);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder).writeParameters(elements);
});
@@ -454,16 +444,17 @@ A add(A a) {
}
test_writeParameters_positional() async {
+ String path = '/test.dart';
String content = 'f(int i, [String s]) {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
+ addSource(path, content);
+ CompilationUnit unit = (await driver.getResult(path))?.unit;
FunctionDeclaration f = unit.declarations[0];
FormalParameterList parameters = f.functionExpression.parameters;
Iterable<ParameterElement> elements = parameters.parameters
.map(resolutionMap.elementDeclaredByFormalParameter);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder).writeParameters(elements);
});
@@ -473,16 +464,17 @@ A add(A a) {
}
test_writeParameters_required() async {
+ String path = '/test.dart';
String content = 'f(int i, String s) {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
+ addSource(path, content);
+ CompilationUnit unit = (await driver.getResult(path))?.unit;
FunctionDeclaration f = unit.declarations[0];
FormalParameterList parameters = f.functionExpression.parameters;
Iterable<ParameterElement> elements = parameters.parameters
.map(resolutionMap.elementDeclaredByFormalParameter);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder).writeParameters(elements);
});
@@ -492,19 +484,20 @@ A add(A a) {
}
test_writeParametersMatchingArguments_named() async {
+ String path = '/test.dart';
String content = '''
f(int i, String s) {
g(s, index: i);
}''';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
+ addSource(path, content);
+ CompilationUnit unit = (await driver.getResult(path))?.unit;
FunctionDeclaration f = unit.declarations[0];
BlockFunctionBody body = f.functionExpression.body;
ExpressionStatement statement = body.block.statements[0];
MethodInvocation invocation = statement.expression;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder)
.writeParametersMatchingArguments(invocation.argumentList);
@@ -516,19 +509,20 @@ f(int i, String s) {
}
test_writeParametersMatchingArguments_required() async {
+ String path = '/test.dart';
String content = '''
f(int i, String s) {
g(s, i);
}''';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
+ addSource(path, content);
+ CompilationUnit unit = (await driver.getResult(path))?.unit;
FunctionDeclaration f = unit.declarations[0];
BlockFunctionBody body = f.functionExpression.body;
ExpressionStatement statement = body.block.statements[0];
MethodInvocation invocation = statement.expression;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder)
.writeParametersMatchingArguments(invocation.argumentList);
@@ -539,16 +533,15 @@ f(int i, String s) {
}
test_writeParameterSource() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration classA = unit.declarations[0];
+ addSource(path, content);
+ DartType typeA = (await driver.getUnitElement(path)).getType('A').type;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
- (builder as DartEditBuilder).writeParameterSource(
- resolutionMap.elementDeclaredByClassDeclaration(classA).type, 'a');
+ (builder as DartEditBuilder).writeParameterSource(typeA, 'a');
});
});
SourceEdit edit = getEdit(builder);
@@ -556,12 +549,13 @@ f(int i, String s) {
}
test_writeType_dynamic() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
+ addSource(path, content);
+ CompilationUnit unit = (await driver.getResult(path))?.unit;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder).writeType(resolutionMap
.elementDeclaredByCompilationUnit(unit)
@@ -575,21 +569,16 @@ f(int i, String s) {
}
test_writeType_genericType() async {
+ String path = '/test.dart';
String content = 'class A {} class B<E> {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration classA = unit.declarations[0];
- ClassDeclaration classB = unit.declarations[1];
+ addSource(path, content);
+ InterfaceType typeA = (await driver.getUnitElement(path)).getType('A').type;
+ InterfaceType typeB = (await driver.getUnitElement(path)).getType('B').type;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
- (builder as DartEditBuilder).writeType(resolutionMap
- .elementDeclaredByClassDeclaration(classB)
- .type
- .instantiate([
- resolutionMap.elementDeclaredByClassDeclaration(classA).type
- ]));
+ (builder as DartEditBuilder).writeType(typeB.instantiate([typeA]));
});
});
SourceEdit edit = getEdit(builder);
@@ -597,17 +586,15 @@ f(int i, String s) {
}
test_writeType_groupName() async {
+ String path = '/test.dart';
String content = 'class A {} class B extends A {} class C extends B {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration classC = unit.declarations[2];
+ addSource(path, content);
+ DartType typeC = (await driver.getUnitElement(path)).getType('C').type;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
- (builder as DartEditBuilder).writeType(
- resolutionMap.elementDeclaredByClassDeclaration(classC).type,
- groupName: 'type');
+ (builder as DartEditBuilder).writeType(typeC, groupName: 'type');
});
});
SourceEdit edit = getEdit(builder);
@@ -621,18 +608,16 @@ f(int i, String s) {
}
test_writeType_groupName_addSupertypeProposals() async {
+ String path = '/test.dart';
String content = 'class A {} class B extends A {} class C extends B {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration classC = unit.declarations[2];
+ addSource(path, content);
+ DartType typeC = (await driver.getUnitElement(path)).getType('C').type;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
- (builder as DartEditBuilder).writeType(
- resolutionMap.elementDeclaredByClassDeclaration(classC).type,
- addSupertypeProposals: true,
- groupName: 'type');
+ (builder as DartEditBuilder)
+ .writeType(typeC, addSupertypeProposals: true, groupName: 'type');
});
});
SourceEdit edit = getEdit(builder);
@@ -656,12 +641,12 @@ f(int i, String s) {
}
test_writeType_null() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- await resolveLibraryUnit(source);
+ addSource(path, content);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder).writeType(null);
});
@@ -671,12 +656,13 @@ f(int i, String s) {
}
test_writeType_required_dynamic() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
+ addSource(path, content);
+ CompilationUnit unit = (await driver.getResult(path))?.unit;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder).writeType(
resolutionMap
@@ -692,17 +678,15 @@ f(int i, String s) {
}
test_writeType_required_notNull() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration classA = unit.declarations[0];
+ addSource(path, content);
+ DartType typeA = (await driver.getUnitElement(path)).getType('A').type;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
- (builder as DartEditBuilder).writeType(
- resolutionMap.elementDeclaredByClassDeclaration(classA).type,
- required: true);
+ (builder as DartEditBuilder).writeType(typeA, required: true);
});
});
SourceEdit edit = getEdit(builder);
@@ -710,12 +694,12 @@ f(int i, String s) {
}
test_writeType_required_null() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- await resolveLibraryUnit(source);
+ addSource(path, content);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilder).writeType(null, required: true);
});
@@ -725,16 +709,15 @@ f(int i, String s) {
}
test_writeType_simpleType() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration classA = unit.declarations[0];
+ addSource(path, content);
+ DartType typeA = (await driver.getUnitElement(path)).getType('A').type;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
- (builder as DartEditBuilder).writeType(
- resolutionMap.elementDeclaredByClassDeclaration(classA).type);
+ (builder as DartEditBuilder).writeType(typeA);
});
});
SourceEdit edit = getEdit(builder);
@@ -742,12 +725,12 @@ f(int i, String s) {
}
test_writeTypes_empty() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- await resolveLibraryUnit(source);
+ addSource(path, content);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilderImpl).writeTypes([]);
});
@@ -757,19 +740,16 @@ f(int i, String s) {
}
test_writeTypes_noPrefix() async {
+ String path = '/test.dart';
String content = 'class A {} class B {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration classA = unit.declarations[0];
- ClassDeclaration classB = unit.declarations[1];
+ addSource(path, content);
+ DartType typeA = (await driver.getUnitElement(path)).getType('A').type;
+ DartType typeB = (await driver.getUnitElement(path)).getType('B').type;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
- (builder as DartEditBuilderImpl).writeTypes([
- resolutionMap.elementDeclaredByClassDeclaration(classA).type,
- resolutionMap.elementDeclaredByClassDeclaration(classB).type
- ]);
+ (builder as DartEditBuilderImpl).writeTypes([typeA, typeB]);
});
});
SourceEdit edit = getEdit(builder);
@@ -777,12 +757,12 @@ f(int i, String s) {
}
test_writeTypes_null() async {
+ String path = '/test.dart';
String content = 'class A {}';
- Source source = addSource('/test.dart', content);
- await resolveLibraryUnit(source);
+ addSource(path, content);
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
(builder as DartEditBuilderImpl).writeTypes(null);
});
@@ -792,19 +772,17 @@ f(int i, String s) {
}
test_writeTypes_prefix() async {
+ String path = '/test.dart';
String content = 'class A {} class B {}';
- Source source = addSource('/test.dart', content);
- CompilationUnit unit = await resolveLibraryUnit(source);
- ClassDeclaration classA = unit.declarations[0];
- ClassDeclaration classB = unit.declarations[1];
+ addSource(path, content);
+ DartType typeA = (await driver.getUnitElement(path)).getType('A').type;
+ DartType typeB = (await driver.getUnitElement(path)).getType('B').type;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, 1, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, 1, (FileEditBuilder builder) {
builder.addInsertion(content.length - 1, (EditBuilder builder) {
- (builder as DartEditBuilderImpl).writeTypes([
- resolutionMap.elementDeclaredByClassDeclaration(classA).type,
- resolutionMap.elementDeclaredByClassDeclaration(classB).type
- ], prefix: 'implements ');
+ (builder as DartEditBuilderImpl)
+ .writeTypes([typeA, typeB], prefix: 'implements ');
});
});
SourceEdit edit = getEdit(builder);
@@ -814,12 +792,15 @@ f(int i, String s) {
@reflectiveTest
class DartFileEditBuilderImplTest extends AbstractContextTest {
+ @override
+ bool get enableNewAnalysisDriver => true;
+
test_createEditBuilder() async {
- Source source = addSource('/test.dart', 'library test;');
- await resolveLibraryUnit(source);
+ String path = '/test.dart';
+ addSource(path, 'library test;');
int timeStamp = 65;
- DartChangeBuilderImpl builder = new DartChangeBuilderImpl(context);
- builder.addFileEdit(source, timeStamp, (FileEditBuilder builder) {
+ DartChangeBuilderImpl builder = new DartChangeBuilderImpl(driver);
+ await builder.addFileEdit(path, timeStamp, (FileEditBuilder builder) {
int offset = 4;
int length = 5;
DartEditBuilderImpl editBuilder = (builder as DartFileEditBuilderImpl)
« no previous file with comments | « pkg/analysis_server/test/src/utilities/change_builder_core_test.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698