From f050ee67e65bfa4e4eaa56c987e34362b9ed8f84 Mon Sep 17 00:00:00 2001 From: Devon Carew Date: Mon, 20 Apr 2020 11:24:50 -0400 Subject: [PATCH] prettify the flutter web bootstrap file (#55125) --- .../lib/src/build_runner/resident_web_runner.dart | 13 +++++++++---- .../general.shard/resident_web_runner_test.dart | 9 +++++---- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/packages/flutter_tools/lib/src/build_runner/resident_web_runner.dart b/packages/flutter_tools/lib/src/build_runner/resident_web_runner.dart index d53b01c99b5..1c3acdfd383 100644 --- a/packages/flutter_tools/lib/src/build_runner/resident_web_runner.dart +++ b/packages/flutter_tools/lib/src/build_runner/resident_web_runner.dart @@ -584,18 +584,23 @@ class _ResidentWebRunner extends ResidentWebRunner { } final String entrypoint = [ - 'import "$importedEntrypoint" as entrypoint;', - 'import "dart:ui" as ui;', + '// Flutter web bootstrap script for $importedEntrypoint.', + '', + "import 'dart:ui' as ui;", + '', + "import '$importedEntrypoint' as entrypoint;", if (hasWebPlugins) - 'import "package:flutter_web_plugins/flutter_web_plugins.dart";', + "import 'package:flutter_web_plugins/flutter_web_plugins.dart';", if (hasWebPlugins) - 'import "$generatedImport";', + "import '$generatedImport';", + '', 'Future main() async {', if (hasWebPlugins) ' registerPlugins(webPluginRegistry);', ' await ui.webOnlyInitializePlatform();', ' entrypoint.main();', '}', + '', ].join('\n'); result.writeAsStringSync(entrypoint); } diff --git a/packages/flutter_tools/test/general.shard/resident_web_runner_test.dart b/packages/flutter_tools/test/general.shard/resident_web_runner_test.dart index 472fe44655b..8bf049e3585 100644 --- a/packages/flutter_tools/test/general.shard/resident_web_runner_test.dart +++ b/packages/flutter_tools/test/general.shard/resident_web_runner_test.dart @@ -11,6 +11,7 @@ import 'package:flutter_tools/src/base/io.dart'; import 'package:flutter_tools/src/base/logger.dart'; import 'package:flutter_tools/src/base/terminal.dart'; import 'package:flutter_tools/src/build_info.dart'; +import 'package:flutter_tools/src/build_runner/devfs_web.dart'; import 'package:flutter_tools/src/build_runner/resident_web_runner.dart'; import 'package:flutter_tools/src/compile.dart'; import 'package:flutter_tools/src/dart/pub.dart'; @@ -21,7 +22,6 @@ import 'package:flutter_tools/src/project.dart'; import 'package:flutter_tools/src/reporting/reporting.dart'; import 'package:flutter_tools/src/resident_runner.dart'; import 'package:flutter_tools/src/web/chrome.dart'; -import 'package:flutter_tools/src/build_runner/devfs_web.dart'; import 'package:flutter_tools/src/web/web_device.dart'; import 'package:mockito/mockito.dart'; import 'package:platform/platform.dart'; @@ -390,9 +390,10 @@ void main() { // Ensure that generated entrypoint is generated correctly. expect(entrypointFileName, isNotNull); - expect(globals.fs.file(entrypointFileName).readAsStringSync(), contains( - 'await ui.webOnlyInitializePlatform();' - )); + final String entrypointContents = globals.fs.file(entrypointFileName).readAsStringSync(); + expect(entrypointContents, contains('// Flutter web bootstrap script')); + expect(entrypointContents, contains("import 'dart:ui' as ui;")); + expect(entrypointContents, contains('await ui.webOnlyInitializePlatform();')); expect(testLogger.statusText, contains('Restarted application in')); expect(result.code, 0);