mirror of
https://github.com/dart-lang/sdk
synced 2024-09-15 23:39:48 +00:00
[ddc] Migrate module symbol tests to null safety
Issue: https://github.com/dart-lang/sdk/issues/46617 Change-Id: I168a02faeb2288430f4daa998a294ab6bd970031 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/250321 Commit-Queue: Nicholas Shahan <nshahan@google.com> Reviewed-by: Anna Gringauze <annagrin@google.com>
This commit is contained in:
parent
788f0dbda6
commit
d795274248
|
@ -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.
|
||||
|
||||
// @dart = 2.9
|
||||
|
||||
import 'package:dev_compiler/src/kernel/module_symbols.dart';
|
||||
import 'package:test/test.dart';
|
||||
|
||||
|
@ -25,9 +23,9 @@ void main() async {
|
|||
group(mode.description, () {
|
||||
var options = SetupCompilerOptions(soundNullSafety: mode.soundNullSafety);
|
||||
group('simple class debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol functionSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol functionSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -35,9 +33,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
functionSymbol = result.symbols.functions.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
functionSymbol = symbols.functions.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -68,13 +66,13 @@ void main() async {
|
|||
});
|
||||
group('location', () {
|
||||
test('has scriptId', () async {
|
||||
expect(classSymbol.location.scriptId, endsWith('/foo.dart'));
|
||||
expect(classSymbol.location!.scriptId, endsWith('/foo.dart'));
|
||||
});
|
||||
test('has start token', () async {
|
||||
expect(classSymbol.location.tokenPos, source.indexOf('class A'));
|
||||
expect(classSymbol.location!.tokenPos, source.indexOf('class A'));
|
||||
});
|
||||
test('has end token', () async {
|
||||
expect(classSymbol.location.endTokenPos, source.lastIndexOf('}'));
|
||||
expect(classSymbol.location!.endTokenPos, source.lastIndexOf('}'));
|
||||
});
|
||||
});
|
||||
test('no fields', () async {
|
||||
|
@ -90,8 +88,8 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('abstract class debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -99,8 +97,8 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -110,8 +108,8 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class extends debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -121,9 +119,8 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol =
|
||||
result.symbols.classes.where((c) => c.localId == 'A').single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.where((c) => c.localId == 'A').single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -133,8 +130,8 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class implements debug symbols', () {
|
||||
TestDriver driver;
|
||||
List<ClassSymbol> classSymbols;
|
||||
late final TestDriver driver;
|
||||
late final List<ClassSymbol> classSymbols;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -146,8 +143,8 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbols = result.symbols.classes;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbols = symbols.classes;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -162,10 +159,10 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class public static field debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
String fieldId;
|
||||
VariableSymbol fieldSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final String fieldId;
|
||||
late final VariableSymbol fieldSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -175,10 +172,10 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
fieldId = classSymbol.fieldIds.single;
|
||||
fieldSymbol = result.symbols.variables.single;
|
||||
fieldSymbol = symbols.variables.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -199,10 +196,10 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class private static field debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
String fieldId;
|
||||
VariableSymbol fieldSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final String fieldId;
|
||||
late final VariableSymbol fieldSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -212,10 +209,10 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
fieldId = classSymbol.fieldIds.single;
|
||||
fieldSymbol = result.symbols.variables.single;
|
||||
fieldSymbol = symbols.variables.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -236,10 +233,10 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class public instance field debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
String fieldId;
|
||||
VariableSymbol fieldSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final String fieldId;
|
||||
late final VariableSymbol fieldSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -249,10 +246,10 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
fieldId = classSymbol.fieldIds.single;
|
||||
fieldSymbol = result.symbols.variables.single;
|
||||
fieldSymbol = symbols.variables.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -273,10 +270,10 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class private instance field debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
String fieldId;
|
||||
VariableSymbol fieldSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final String fieldId;
|
||||
late final VariableSymbol fieldSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -286,10 +283,10 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
fieldId = classSymbol.fieldIds.single;
|
||||
fieldSymbol = result.symbols.variables.single;
|
||||
fieldSymbol = symbols.variables.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -310,9 +307,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class public instance method debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -322,10 +319,10 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, 'publicInstanceMethod');
|
||||
_symbolForDartFunction(symbols, 'publicInstanceMethod');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -343,9 +340,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class private instance method debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -355,10 +352,10 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, '_privateInstanceMethod');
|
||||
_symbolForDartFunction(symbols, '_privateInstanceMethod');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -376,9 +373,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class public static method debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -388,10 +385,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, 'publicStaticMethod');
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(symbols, 'publicStaticMethod');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -409,9 +405,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class private static method debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -421,10 +417,10 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, '_privateStaticMethod');
|
||||
_symbolForDartFunction(symbols, '_privateStaticMethod');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -442,9 +438,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class public instance getter debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -454,10 +450,10 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, 'publicInstanceGetter');
|
||||
_symbolForDartFunction(symbols, 'publicInstanceGetter');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -475,9 +471,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class private instance getter debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -487,10 +483,10 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, '_privateInstanceGetter');
|
||||
_symbolForDartFunction(symbols, '_privateInstanceGetter');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -508,9 +504,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class public instance setter debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -522,10 +518,10 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, 'publicInstanceSetter');
|
||||
_symbolForDartFunction(symbols, 'publicInstanceSetter');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -543,9 +539,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class private instance setter debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -557,10 +553,10 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, '_privateInstanceSetter');
|
||||
_symbolForDartFunction(symbols, '_privateInstanceSetter');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -578,9 +574,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class public static getter debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -590,10 +586,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, 'publicStaticGetter');
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(symbols, 'publicStaticGetter');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -611,9 +606,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class private static getter debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -623,10 +618,10 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, '_privateStaticGetter');
|
||||
_symbolForDartFunction(symbols, '_privateStaticGetter');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -644,9 +639,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class public static setter debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -657,10 +652,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, 'publicStaticSetter');
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(symbols, 'publicStaticSetter');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -678,9 +672,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class private static setter debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -691,10 +685,10 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, '_privateStaticSetter');
|
||||
_symbolForDartFunction(symbols, '_privateStaticSetter');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -712,9 +706,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class public const constructor debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -724,9 +718,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(result.symbols, '');
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(symbols, '');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -745,9 +739,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class public named constructor debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -757,9 +751,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(result.symbols, 'named');
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(symbols, 'named');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -774,9 +768,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class private named constructor debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -787,9 +781,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(result.symbols, '_');
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(symbols, '_');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -804,9 +798,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class unnamed factory debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -818,9 +812,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(result.symbols, '');
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(symbols, '');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -835,9 +829,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class public named factory debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -849,10 +843,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, 'publicFactory');
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(symbols, 'publicFactory');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -867,9 +860,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class private named factory debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -881,10 +874,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, '_privateFactory');
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(symbols, '_privateFactory');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -899,9 +891,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class public redirecting constructor debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -913,10 +905,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, 'publicRedirecting');
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(symbols, 'publicRedirecting');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -931,9 +922,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('class private redirecting constructor debug symbols', () {
|
||||
TestDriver driver;
|
||||
ClassSymbol classSymbol;
|
||||
FunctionSymbol methodSymbol;
|
||||
late final TestDriver driver;
|
||||
late final ClassSymbol classSymbol;
|
||||
late final FunctionSymbol methodSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -945,10 +936,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
classSymbol = result.symbols.classes.single;
|
||||
methodSymbol =
|
||||
_symbolForDartFunction(result.symbols, '_privateRedirecting');
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
classSymbol = symbols.classes.single;
|
||||
methodSymbol = _symbolForDartFunction(symbols, '_privateRedirecting');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
|
|
@ -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.
|
||||
|
||||
// @dart = 2.9
|
||||
|
||||
import 'package:dev_compiler/src/kernel/module_symbols.dart';
|
||||
import 'package:test/test.dart';
|
||||
|
||||
|
@ -18,9 +16,9 @@ void main() async {
|
|||
group(mode.description, () {
|
||||
var options = SetupCompilerOptions(soundNullSafety: mode.soundNullSafety);
|
||||
group('top level function debug symbols', () {
|
||||
TestDriver driver;
|
||||
FunctionSymbol functionSymbol;
|
||||
LibrarySymbol librarySymbol;
|
||||
late final TestDriver driver;
|
||||
late final FunctionSymbol functionSymbol;
|
||||
late final LibrarySymbol librarySymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -30,9 +28,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
librarySymbol = result.symbols.libraries.single;
|
||||
functionSymbol = result.symbols.functions.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
librarySymbol = symbols.libraries.single;
|
||||
functionSymbol = symbols.functions.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -62,15 +60,15 @@ void main() async {
|
|||
});
|
||||
group('location', () {
|
||||
test('has scriptId', () async {
|
||||
expect(functionSymbol.location.scriptId, endsWith('/foo.dart'));
|
||||
expect(functionSymbol.location!.scriptId, endsWith('/foo.dart'));
|
||||
});
|
||||
test('has start token', () async {
|
||||
expect(functionSymbol.location.tokenPos,
|
||||
expect(functionSymbol.location!.tokenPos,
|
||||
source.indexOf('topLevelFunction'));
|
||||
});
|
||||
test('has end token', () async {
|
||||
expect(
|
||||
functionSymbol.location.endTokenPos, source.lastIndexOf('}'));
|
||||
functionSymbol.location!.endTokenPos, source.lastIndexOf('}'));
|
||||
});
|
||||
});
|
||||
test('id in LibrarySymbol scopes', () async {
|
||||
|
@ -79,9 +77,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('top level private function debug symbols', () {
|
||||
TestDriver driver;
|
||||
FunctionSymbol functionSymbol;
|
||||
LibrarySymbol librarySymbol;
|
||||
late final TestDriver driver;
|
||||
late final FunctionSymbol functionSymbol;
|
||||
late final LibrarySymbol librarySymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -91,9 +89,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
functionSymbol = result.symbols.functions.single;
|
||||
librarySymbol = result.symbols.libraries.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
functionSymbol = symbols.functions.single;
|
||||
librarySymbol = symbols.libraries.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -108,9 +106,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('top level public getter debug symbols', () {
|
||||
TestDriver driver;
|
||||
FunctionSymbol functionSymbol;
|
||||
LibrarySymbol librarySymbol;
|
||||
late final TestDriver driver;
|
||||
late final FunctionSymbol functionSymbol;
|
||||
late final LibrarySymbol librarySymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -118,9 +116,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
functionSymbol = result.symbols.functions.single;
|
||||
librarySymbol = result.symbols.libraries.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
functionSymbol = symbols.functions.single;
|
||||
librarySymbol = symbols.libraries.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -138,9 +136,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('top level private getter debug symbols', () {
|
||||
TestDriver driver;
|
||||
FunctionSymbol functionSymbol;
|
||||
LibrarySymbol librarySymbol;
|
||||
late final TestDriver driver;
|
||||
late final FunctionSymbol functionSymbol;
|
||||
late final LibrarySymbol librarySymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -148,9 +146,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
functionSymbol = result.symbols.functions.single;
|
||||
librarySymbol = result.symbols.libraries.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
functionSymbol = symbols.functions.single;
|
||||
librarySymbol = symbols.libraries.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -168,9 +166,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('top level public setter debug symbols', () {
|
||||
TestDriver driver;
|
||||
FunctionSymbol functionSymbol;
|
||||
LibrarySymbol librarySymbol;
|
||||
late final TestDriver driver;
|
||||
late final FunctionSymbol functionSymbol;
|
||||
late final LibrarySymbol librarySymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
var _value;
|
||||
|
@ -178,9 +176,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
functionSymbol = result.symbols.functions.single;
|
||||
librarySymbol = result.symbols.libraries.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
functionSymbol = symbols.functions.single;
|
||||
librarySymbol = symbols.libraries.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -198,9 +196,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('top level private setter debug symbols', () {
|
||||
TestDriver driver;
|
||||
FunctionSymbol functionSymbol;
|
||||
LibrarySymbol librarySymbol;
|
||||
late final TestDriver driver;
|
||||
late final FunctionSymbol functionSymbol;
|
||||
late final LibrarySymbol librarySymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -209,9 +207,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
functionSymbol = result.symbols.functions.single;
|
||||
librarySymbol = result.symbols.libraries.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
functionSymbol = symbols.functions.single;
|
||||
librarySymbol = symbols.libraries.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -229,13 +227,13 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('function arguments debug symbols', () {
|
||||
TestDriver driver;
|
||||
FunctionSymbol functionWithPositionalArgSymbol;
|
||||
FunctionSymbol functionWithOptionalArgSymbol;
|
||||
FunctionSymbol functionWithNamedArgSymbol;
|
||||
VariableSymbol xSymbol;
|
||||
VariableSymbol ySymbol;
|
||||
VariableSymbol zSymbol;
|
||||
late final TestDriver driver;
|
||||
late final FunctionSymbol functionWithPositionalArgSymbol;
|
||||
late final FunctionSymbol functionWithOptionalArgSymbol;
|
||||
late final FunctionSymbol functionWithNamedArgSymbol;
|
||||
late final VariableSymbol xSymbol;
|
||||
late final VariableSymbol ySymbol;
|
||||
late final VariableSymbol zSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -249,16 +247,16 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
functionWithPositionalArgSymbol = result.symbols.functions
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
functionWithPositionalArgSymbol = symbols.functions
|
||||
.singleWhere((f) => f.name == 'functionWithPositionalArg');
|
||||
functionWithOptionalArgSymbol = result.symbols.functions
|
||||
functionWithOptionalArgSymbol = symbols.functions
|
||||
.singleWhere((f) => f.name == 'functionWithOptionalArg');
|
||||
functionWithNamedArgSymbol = result.symbols.functions
|
||||
functionWithNamedArgSymbol = symbols.functions
|
||||
.singleWhere((f) => f.name == 'functionWithNamedArg');
|
||||
xSymbol = result.symbols.variables.singleWhere((v) => v.name == 'x');
|
||||
ySymbol = result.symbols.variables.singleWhere((v) => v.name == 'y');
|
||||
zSymbol = result.symbols.variables.singleWhere((v) => v.name == 'z');
|
||||
xSymbol = symbols.variables.singleWhere((v) => v.name == 'x');
|
||||
ySymbol = symbols.variables.singleWhere((v) => v.name == 'y');
|
||||
zSymbol = symbols.variables.singleWhere((v) => v.name == 'z');
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -292,9 +290,9 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('function local variable debug symbols', () {
|
||||
TestDriver driver;
|
||||
FunctionSymbol functionSymbol;
|
||||
VariableSymbol variableSymbol;
|
||||
late final TestDriver driver;
|
||||
late final FunctionSymbol functionSymbol;
|
||||
late final VariableSymbol variableSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -305,9 +303,9 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
variableSymbol = result.symbols.variables.single;
|
||||
functionSymbol = result.symbols.functions.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
variableSymbol = symbols.variables.single;
|
||||
functionSymbol = symbols.functions.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
|
|
@ -2,12 +2,15 @@
|
|||
// 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.
|
||||
|
||||
// @dart = 2.9
|
||||
|
||||
import 'dart:io' show Directory, File;
|
||||
|
||||
import 'package:dev_compiler/dev_compiler.dart';
|
||||
import 'package:dev_compiler/src/compiler/module_builder.dart'
|
||||
show ModuleFormat;
|
||||
import 'package:dev_compiler/src/compiler/shared_command.dart'
|
||||
show SharedCompilerOptions;
|
||||
import 'package:dev_compiler/src/kernel/command.dart';
|
||||
import 'package:dev_compiler/src/kernel/compiler.dart' show ProgramCompiler;
|
||||
import 'package:dev_compiler/src/kernel/module_symbols.dart';
|
||||
import 'package:kernel/ast.dart' show Component, Library;
|
||||
|
||||
import '../shared_test_options.dart';
|
||||
|
@ -17,7 +20,7 @@ class TestCompiler {
|
|||
|
||||
TestCompiler(this.setup);
|
||||
|
||||
Future<JSCode> compile({Uri input, Uri packages}) async {
|
||||
Future<JSCode> compile({required Uri input, required Uri packages}) async {
|
||||
// Initialize incremental compiler and create component.
|
||||
setup.options.packagesFileUri = packages;
|
||||
var compiler = DevelopmentIncrementalCompiler(setup.options, input);
|
||||
|
@ -31,7 +34,7 @@ class TestCompiler {
|
|||
|
||||
// Initialize DDC.
|
||||
var moduleName = 'foo.dart';
|
||||
var classHierarchy = compilerResult.classHierarchy;
|
||||
var classHierarchy = compilerResult.classHierarchy!;
|
||||
var compilerOptions = SharedCompilerOptions(
|
||||
replCompile: true,
|
||||
moduleName: moduleName,
|
||||
|
@ -63,18 +66,16 @@ class TestCompiler {
|
|||
|
||||
class TestDriver {
|
||||
final SetupCompilerOptions options;
|
||||
Directory tempDir;
|
||||
final String source;
|
||||
Uri input;
|
||||
Uri packages;
|
||||
File file;
|
||||
late final Directory tempDir;
|
||||
late final Uri input;
|
||||
late final Uri packages;
|
||||
|
||||
TestDriver(this.options, this.source) {
|
||||
TestDriver(this.options, String source) {
|
||||
var systemTempDir = Directory.systemTemp;
|
||||
tempDir = systemTempDir.createTempSync('foo bar');
|
||||
|
||||
input = tempDir.uri.resolve('foo.dart');
|
||||
file = File.fromUri(input)..createSync();
|
||||
var file = File.fromUri(input)..createSync();
|
||||
file.writeAsStringSync(source);
|
||||
|
||||
packages = tempDir.uri.resolve('package_config.json');
|
||||
|
@ -93,8 +94,15 @@ class TestDriver {
|
|||
''');
|
||||
}
|
||||
|
||||
Future<JSCode> compile() async =>
|
||||
await TestCompiler(options).compile(input: input, packages: packages);
|
||||
Future<ModuleSymbols> compileAndGetSymbols() async {
|
||||
var result =
|
||||
await TestCompiler(options).compile(input: input, packages: packages);
|
||||
var symbols = result.symbols;
|
||||
if (symbols == null) {
|
||||
throw Exception('No symbols found in compilation result.');
|
||||
}
|
||||
return symbols;
|
||||
}
|
||||
|
||||
void cleanUp() {
|
||||
tempDir.delete(recursive: true);
|
||||
|
|
|
@ -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.
|
||||
|
||||
// @dart = 2.9
|
||||
|
||||
import 'package:dev_compiler/src/kernel/module_symbols.dart';
|
||||
import 'package:test/test.dart';
|
||||
|
||||
|
@ -18,8 +16,8 @@ void main() async {
|
|||
group(mode.description, () {
|
||||
var options = SetupCompilerOptions(soundNullSafety: mode.soundNullSafety);
|
||||
group('global variable debug symbols', () {
|
||||
TestDriver driver;
|
||||
VariableSymbol variableSymbol;
|
||||
late final TestDriver driver;
|
||||
late final VariableSymbol variableSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -28,8 +26,8 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
variableSymbol = result.symbols.variables.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
variableSymbol = symbols.variables.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -60,21 +58,21 @@ void main() async {
|
|||
});
|
||||
group('location', () {
|
||||
test('has scriptId', () async {
|
||||
expect(variableSymbol.location.scriptId, endsWith('/foo.dart'));
|
||||
expect(variableSymbol.location!.scriptId, endsWith('/foo.dart'));
|
||||
});
|
||||
test('start token position', () async {
|
||||
expect(variableSymbol.location.tokenPos,
|
||||
expect(variableSymbol.location!.tokenPos,
|
||||
source.indexOf('globalVariable'));
|
||||
});
|
||||
test('end token position', () async {
|
||||
expect(
|
||||
variableSymbol.location.endTokenPos, source.lastIndexOf(';'));
|
||||
variableSymbol.location!.endTokenPos, source.lastIndexOf(';'));
|
||||
});
|
||||
});
|
||||
});
|
||||
group('global final variable debug symbols', () {
|
||||
TestDriver driver;
|
||||
VariableSymbol variableSymbol;
|
||||
late final TestDriver driver;
|
||||
late final VariableSymbol variableSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -83,8 +81,8 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
variableSymbol = result.symbols.variables.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
variableSymbol = symbols.variables.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
@ -94,8 +92,8 @@ void main() async {
|
|||
});
|
||||
});
|
||||
group('global const variable debug symbols', () {
|
||||
TestDriver driver;
|
||||
VariableSymbol variableSymbol;
|
||||
late final TestDriver driver;
|
||||
late final VariableSymbol variableSymbol;
|
||||
final source = '''
|
||||
${options.dartLangComment}
|
||||
|
||||
|
@ -106,8 +104,8 @@ void main() async {
|
|||
''';
|
||||
setUpAll(() async {
|
||||
driver = TestDriver(options, source);
|
||||
var result = await driver.compile();
|
||||
variableSymbol = result.symbols.variables.single;
|
||||
var symbols = await driver.compileAndGetSymbols();
|
||||
variableSymbol = symbols.variables.single;
|
||||
});
|
||||
tearDownAll(() {
|
||||
driver.cleanUp();
|
||||
|
|
Loading…
Reference in a new issue