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

Unified Diff: tests/compiler/dart2js/serialization/helper.dart

Issue 2057993003: Serialize NativeBehavior for elements (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Cleanup. Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tests/compiler/dart2js/serialization/helper.dart
diff --git a/tests/compiler/dart2js/serialization/helper.dart b/tests/compiler/dart2js/serialization/helper.dart
index 3f2b42973917d8c67ce58b1a623808c7046befc8..e70b2ac106ef7ceafd85b25a5054577455b4e2d5 100644
--- a/tests/compiler/dart2js/serialization/helper.dart
+++ b/tests/compiler/dart2js/serialization/helper.dart
@@ -127,25 +127,39 @@ Future<SerializedData> serializeDartCore(
print('Loading data from $file');
serializedData = new SerializedData(uri, file.readAsStringSync());
}
+ } else {
+ SerializationResult result = await serialize(Uris.dart_core, uri);
+ serializedData = result.serializedData;
}
- if (serializedData == null) {
- Compiler compiler = compilerFor(
- options: [Flags.analyzeAll]);
- compiler.serialization.supportSerialization = true;
- await compiler.run(Uris.dart_core);
- BufferedEventSink sink = new BufferedEventSink();
- compiler.serialization.serializeToSink(
- sink, compiler.libraryLoader.libraries);
- serializedData = new SerializedData(uri, sink.text);
- if (arguments.saveSerializedData) {
- File file = new File(arguments.serializedDataFileName);
- print('Saving data to $file');
- file.writeAsStringSync(serializedData.data);
- }
+ if (arguments.saveSerializedData) {
+ File file = new File(arguments.serializedDataFileName);
+ print('Saving data to $file');
+ file.writeAsStringSync(serializedData.data);
}
return serializedData;
}
+class SerializationResult {
+ final Compiler compiler;
+ final SerializedData serializedData;
+
+ SerializationResult(this.compiler, this.serializedData);
+}
+
+Future<SerializationResult> serialize(Uri entryPoint, [Uri dataUri]) async {
+ if (dataUri == null) {
+ dataUri = Uri.parse('memory:${DEFAULT_DATA_FILE_NAME}');
+ }
+ Compiler compiler = compilerFor(options: [Flags.analyzeAll]);
+ compiler.serialization.supportSerialization = true;
+ await compiler.run(entryPoint);
+ BufferedEventSink sink = new BufferedEventSink();
+ compiler.serialization.serializeToSink(
+ sink, compiler.libraryLoader.libraries);
+ SerializedData serializedData = new SerializedData(dataUri, sink.text);
+ return new SerializationResult(compiler, serializedData);
+}
+
class SerializedData {
final Uri uri;
final String data;
« no previous file with comments | « tests/compiler/dart2js/serialization/compilation_test.dart ('k') | tests/compiler/dart2js/serialization/model_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698