Chromium Code Reviews| 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..b1b1eff16ef8749aa4147b50e887babe5a70de26 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,6 @@ 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:test/test.dart'; |
| import 'package:test_reflective_loader/test_reflective_loader.dart'; |
| @@ -27,22 +24,29 @@ 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;'); |
| + await driver.getResult(path); |
|
scheglov
2017/02/08 21:09:10
You don't use this result, maybe you don't need to
Brian Wilkerson
2017/02/09 03:22:42
Removed
|
| 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,12 +60,13 @@ class DartEditBuilderImplTest extends AbstractContextTest { |
| } |
| test_writeClassDeclaration_interfaces() async { |
| - Source source = addSource('/test.dart', 'class A {}'); |
| - CompilationUnit unit = await resolveLibraryUnit(source); |
| + String path = '/test.dart'; |
| + addSource(path, 'class A {}'); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration declaration = unit.declarations[0]; |
| - 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 |
| @@ -74,11 +79,12 @@ class DartEditBuilderImplTest extends AbstractContextTest { |
| } |
| test_writeClassDeclaration_isAbstract() async { |
| - Source source = addSource('/test.dart', ''); |
| - await resolveLibraryUnit(source); |
| + String path = '/test.dart'; |
| + addSource(path, ''); |
| + await driver.getResult(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 +95,12 @@ class DartEditBuilderImplTest extends AbstractContextTest { |
| } |
| test_writeClassDeclaration_memberWriter() async { |
| - Source source = addSource('/test.dart', ''); |
| - await resolveLibraryUnit(source); |
| + String path = '/test.dart'; |
| + addSource(path, ''); |
| + await driver.getResult(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,12 +113,13 @@ class DartEditBuilderImplTest extends AbstractContextTest { |
| } |
| test_writeClassDeclaration_mixins_noSuperclass() async { |
| - Source source = addSource('/test.dart', 'class A {}'); |
| - CompilationUnit unit = await resolveLibraryUnit(source); |
| + String path = '/test.dart'; |
| + addSource(path, 'class A {}'); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration classA = unit.declarations[0]; |
|
scheglov
2017/02/08 21:09:10
Here you do use, the result, but there is a cheape
|
| - 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 |
| @@ -124,13 +132,14 @@ class DartEditBuilderImplTest extends AbstractContextTest { |
| } |
| test_writeClassDeclaration_mixins_superclass() async { |
| - Source source = addSource('/test.dart', 'class A {} class B {}'); |
| - CompilationUnit unit = await resolveLibraryUnit(source); |
| + String path = '/test.dart'; |
| + addSource(path, 'class A {} class B {}'); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration classA = unit.declarations[0]; |
| ClassDeclaration classB = unit.declarations[1]; |
| - 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: [ |
| @@ -146,11 +155,12 @@ class DartEditBuilderImplTest extends AbstractContextTest { |
| } |
| test_writeClassDeclaration_nameGroupName() async { |
| - Source source = addSource('/test.dart', ''); |
| - await resolveLibraryUnit(source); |
| + String path = '/test.dart'; |
| + addSource(path, ''); |
| + await driver.getResult(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,12 +178,13 @@ class DartEditBuilderImplTest extends AbstractContextTest { |
| } |
| test_writeClassDeclaration_superclass() async { |
| - Source source = addSource('/test.dart', 'class B {}'); |
| - CompilationUnit unit = await resolveLibraryUnit(source); |
| + String path = '/test.dart'; |
| + addSource(path, 'class B {}'); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration declaration = unit.declarations[0]; |
| - 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 |
| @@ -186,12 +197,13 @@ 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); |
| + await driver.getResult(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(content.length - 1, (EditBuilder builder) { |
| (builder as DartEditBuilder).writeFieldDeclaration('f', |
| initializerWriter: () { |
| @@ -204,12 +216,13 @@ 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); |
| + await driver.getResult(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(content.length - 1, (EditBuilder builder) { |
| (builder as DartEditBuilder).writeFieldDeclaration('f', isConst: true); |
| }); |
| @@ -219,12 +232,13 @@ 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); |
| + await driver.getResult(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(content.length - 1, (EditBuilder builder) { |
| (builder as DartEditBuilder) |
| .writeFieldDeclaration('f', isConst: true, isFinal: true); |
| @@ -235,12 +249,13 @@ 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); |
| + await driver.getResult(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(content.length - 1, (EditBuilder builder) { |
| (builder as DartEditBuilder).writeFieldDeclaration('f', isFinal: true); |
| }); |
| @@ -250,12 +265,13 @@ 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); |
| + await driver.getResult(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(content.length - 1, (EditBuilder builder) { |
| (builder as DartEditBuilder).writeFieldDeclaration('f', isStatic: true); |
| }); |
| @@ -265,12 +281,13 @@ 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); |
| + await driver.getResult(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(content.length - 1, (EditBuilder builder) { |
| (builder as DartEditBuilder) |
| .writeFieldDeclaration('f', nameGroupName: 'name'); |
| @@ -290,13 +307,14 @@ 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); |
| + addSource(path, content); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration declaration = unit.declarations[0]; |
| - 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 |
| @@ -319,12 +337,13 @@ 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); |
| + await driver.getResult(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(content.length - 1, (EditBuilder builder) { |
| (builder as DartEditBuilder).writeGetterDeclaration('g', |
| bodyWriter: () { |
| @@ -337,12 +356,13 @@ 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); |
| + await driver.getResult(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(content.length - 1, (EditBuilder builder) { |
| (builder as DartEditBuilder) |
| .writeGetterDeclaration('g', isStatic: true); |
| @@ -353,12 +373,13 @@ 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); |
| + await driver.getResult(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(content.length - 1, (EditBuilder builder) { |
| (builder as DartEditBuilder) |
| .writeGetterDeclaration('g', nameGroupName: 'name'); |
| @@ -378,13 +399,14 @@ 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); |
| + addSource(path, content); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration classA = unit.declarations[0]; |
| - 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: |
| @@ -406,18 +428,19 @@ 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); |
| + addSource(path, content); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration declaration = unit.declarations[0]; |
| - 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 |
| @@ -435,16 +458,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 +478,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 +498,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 +518,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 +543,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,13 +567,14 @@ 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); |
| + addSource(path, content); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration classA = unit.declarations[0]; |
| - 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'); |
| @@ -556,12 +585,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,14 +605,15 @@ 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); |
| + addSource(path, content); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration classA = unit.declarations[0]; |
| ClassDeclaration classB = unit.declarations[1]; |
| - 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) |
| @@ -597,13 +628,14 @@ 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); |
| + addSource(path, content); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration classC = unit.declarations[2]; |
| - 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, |
| @@ -621,13 +653,14 @@ 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); |
| + addSource(path, content); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration classC = unit.declarations[2]; |
| - 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, |
| @@ -656,12 +689,13 @@ 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); |
| + await driver.getResult(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(content.length - 1, (EditBuilder builder) { |
| (builder as DartEditBuilder).writeType(null); |
| }); |
| @@ -671,12 +705,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,13 +727,14 @@ 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); |
| + addSource(path, content); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration classA = unit.declarations[0]; |
| - 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, |
| @@ -710,12 +746,13 @@ 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); |
| + await driver.getResult(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(content.length - 1, (EditBuilder builder) { |
| (builder as DartEditBuilder).writeType(null, required: true); |
| }); |
| @@ -725,13 +762,14 @@ 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); |
| + addSource(path, content); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration classA = unit.declarations[0]; |
| - 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); |
| @@ -742,12 +780,13 @@ 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); |
| + await driver.getResult(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(content.length - 1, (EditBuilder builder) { |
| (builder as DartEditBuilderImpl).writeTypes([]); |
| }); |
| @@ -757,14 +796,15 @@ 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); |
| + addSource(path, content); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration classA = unit.declarations[0]; |
| ClassDeclaration classB = unit.declarations[1]; |
| - 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, |
| @@ -777,12 +817,13 @@ 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); |
| + await driver.getResult(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(content.length - 1, (EditBuilder builder) { |
| (builder as DartEditBuilderImpl).writeTypes(null); |
| }); |
| @@ -792,14 +833,15 @@ 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); |
| + addSource(path, content); |
| + CompilationUnit unit = (await driver.getResult(path))?.unit; |
| ClassDeclaration classA = unit.declarations[0]; |
| ClassDeclaration classB = unit.declarations[1]; |
| - 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, |
| @@ -814,12 +856,16 @@ 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;'); |
| + await driver.getResult(path); |
| 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) |