mirror of
https://github.com/dart-lang/sdk
synced 2024-10-06 13:57:58 +00:00
[dart2js] Fix bug in modular_test_suite.
Change-Id: I37954e14e8b53e70e0cfc4c3bcfb216e9f4d482f Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148000 Reviewed-by: Sigmund Cherem <sigmund@google.com>
This commit is contained in:
parent
b7364da5fd
commit
107862e2bf
|
@ -13,6 +13,8 @@ import 'package:compiler/src/elements/entities.dart'
|
|||
import 'package:compiler/src/kernel/dart2js_target.dart';
|
||||
import 'package:compiler/src/kernel/loader.dart';
|
||||
import 'package:expect/expect.dart';
|
||||
import 'package:front_end/src/api_prototype/experimental_flags.dart'
|
||||
show ExperimentalFlag;
|
||||
import 'package:front_end/src/api_prototype/front_end.dart';
|
||||
import 'package:front_end/src/api_prototype/memory_file_system.dart';
|
||||
import 'package:front_end/src/api_prototype/standard_file_system.dart';
|
||||
|
@ -80,7 +82,8 @@ Future<List<int>> compileUnit(List<String> inputs, Map<String, dynamic> sources,
|
|||
..target = new Dart2jsTarget("dart2js", new TargetFlags())
|
||||
..fileSystem = new TestFileSystem(fs)
|
||||
..additionalDills = additionalDills
|
||||
..packagesFileUri = toTestUri('.packages');
|
||||
..packagesFileUri = toTestUri('.packages')
|
||||
..experimentalFlags = {ExperimentalFlag.nonNullable: true};
|
||||
var inputUris = inputs.map(toTestUri).toList();
|
||||
var inputUriSet = inputUris.toSet();
|
||||
var component = (await kernelForModule(inputUris, options)).component;
|
||||
|
@ -112,12 +115,14 @@ class TestFileSystem implements FileSystem {
|
|||
}
|
||||
|
||||
const sourceA = '''
|
||||
// @dart=2.7
|
||||
class A0 {
|
||||
StringBuffer buffer = new StringBuffer();
|
||||
}
|
||||
''';
|
||||
|
||||
const sourceB = '''
|
||||
// @dart=2.7
|
||||
import 'a0.dart';
|
||||
|
||||
class B1 extends A0 {
|
||||
|
@ -128,6 +133,7 @@ A0 createA0() => new A0();
|
|||
''';
|
||||
|
||||
const sourceC = '''
|
||||
// @dart=2.7
|
||||
import 'b1.dart';
|
||||
|
||||
class C2 extends B1 {
|
||||
|
|
|
@ -132,13 +132,18 @@ class SourceToDillStep implements IOModularStep {
|
|||
return;
|
||||
}
|
||||
sources = ['dart:core'];
|
||||
extraArgs = ['--libraries-file', '$rootScheme:///sdk/lib/libraries.json'];
|
||||
extraArgs = [
|
||||
'--libraries-file',
|
||||
'$rootScheme:///sdk_nnbd/lib/libraries.json'
|
||||
];
|
||||
assert(transitiveDependencies.isEmpty);
|
||||
} else {
|
||||
sources = module.sources.map(sourceToImportUri).toList();
|
||||
extraArgs = ['--packages-file', '$rootScheme:/.packages'];
|
||||
}
|
||||
|
||||
// TODO(joshualitt): Ensure the kernel worker has some way to specify
|
||||
// --no-sound-null-safety
|
||||
List<String> args = [
|
||||
_kernelWorkerScript,
|
||||
'--no-summary-only',
|
||||
|
@ -155,6 +160,7 @@ class SourceToDillStep implements IOModularStep {
|
|||
.expand((m) => ['--input-linked', '${toUri(m, dillId)}'])),
|
||||
...(sources.expand((String uri) => ['--source', uri])),
|
||||
...(flags.expand((String flag) => ['--enable-experiment', flag])),
|
||||
'--enable-experiment=non-nullable',
|
||||
];
|
||||
|
||||
var result =
|
||||
|
@ -197,8 +203,7 @@ class GlobalAnalysisStep implements IOModularStep {
|
|||
'--packages=${sdkRoot.toFilePath()}/.packages',
|
||||
_dart2jsScript,
|
||||
// TODO(sigmund): remove this dependency on libraries.json
|
||||
if (_options.useSdk)
|
||||
'--libraries-spec=$_librarySpecForSnapshot',
|
||||
if (_options.useSdk) '--libraries-spec=$_librarySpecForSnapshot',
|
||||
'${toUri(module, dillId)}',
|
||||
for (String flag in flags) '--enable-experiment=$flag',
|
||||
'${Flags.dillDependencies}=${dillDependencies.join(',')}',
|
||||
|
@ -337,7 +342,7 @@ class RunD8 implements IOModularStep {
|
|||
if (_options.verbose) print("\nstep: d8 on $module");
|
||||
List<String> d8Args = [
|
||||
sdkRoot
|
||||
.resolve('sdk/lib/_internal/js_runtime/lib/preambles/d8.js')
|
||||
.resolve('sdk_nnbd/lib/_internal/js_runtime/lib/preambles/d8.js')
|
||||
.toFilePath(),
|
||||
root.resolveUri(toUri(module, jsId)).toFilePath(),
|
||||
];
|
||||
|
|
|
@ -4,6 +4,4 @@
|
|||
#
|
||||
dependencies:
|
||||
def2: [def]
|
||||
main: [def2, expect]
|
||||
flags:
|
||||
- extension-methods
|
||||
main: [def2, expect]
|
Loading…
Reference in a new issue