format
diff --git a/lib/build/html_import_annotation_recorder.dart b/lib/build/html_import_annotation_recorder.dart
index 9474d69..d54b579 100644
--- a/lib/build/html_import_annotation_recorder.dart
+++ b/lib/build/html_import_annotation_recorder.dart
@@ -35,8 +35,11 @@
     } else if (annotationElement is PropertyAccessorElement) {
       type = annotationElement.variable.propagatedType;
       if (type == null) {
-        type = pluginData.resolver.evaluateConstant(annotationElement.library,
-            pluginData.initializer.annotationNode.name).value.type;
+        type = pluginData.resolver
+            .evaluateConstant(annotationElement.library,
+                pluginData.initializer.annotationNode.name)
+            .value
+            .type;
       }
     } else {
       logger.error('Unsupported annotation type. Only constructors and '
@@ -65,13 +68,18 @@
 
     var originalImportPath;
     if (annotationElement.element is PropertyAccessorElement) {
-      originalImportPath = resolver.evaluateConstant(
-              element.library, annotation.name).value.fields[
-          'filePath'].toStringValue();
+      originalImportPath = resolver
+          .evaluateConstant(element.library, annotation.name)
+          .value
+          .fields['filePath']
+          .toStringValue();
     } else {
       assert(annotationElement.element is ConstructorElement);
-      originalImportPath = resolver.evaluateConstant(element.library,
-          annotation.arguments.arguments.first).value.toStringValue();
+      originalImportPath = resolver
+          .evaluateConstant(
+              element.library, annotation.arguments.arguments.first)
+          .value
+          .toStringValue();
     }
 
     var libPath;
diff --git a/lib/build/import_inliner.dart b/lib/build/import_inliner.dart
index 1f562a7..8703ead 100644
--- a/lib/build/import_inliner.dart
+++ b/lib/build/import_inliner.dart
@@ -38,7 +38,8 @@
   apply(Transform transform) {
     var logger = new BuildLogger(transform, convertErrorsToWarnings: true);
     return new ImportInliner(transform, transform.primaryInput.id, logger,
-        bindingStartDelimiters: bindingStartDelimiters).run();
+            bindingStartDelimiters: bindingStartDelimiters)
+        .run();
   }
 }
 
@@ -71,8 +72,10 @@
       if (imports.length > 1) {
         _inlineImports(primaryDocument, imports);
       } else if (!changed &&
-          primaryDocument.querySelectorAll('link[rel="import"]').where(
-                  (import) => import.attributes['type'] != 'css').length ==
+          primaryDocument
+                  .querySelectorAll('link[rel="import"]')
+                  .where((import) => import.attributes['type'] != 'css')
+                  .length ==
               0) {
         // If there were no url changes and no imports, then we are done.
         return;
@@ -303,7 +306,8 @@
 
     if (primaryInput.package != id.package) {
       // Technically we shouldn't get there
-      logger.error(internalErrorDontKnowHowToImport
+      logger.error(
+          internalErrorDontKnowHowToImport
               .create({'target': id, 'source': primaryInput, 'extra': ''}),
           span: span);
       return href;
diff --git a/lib/build/messages.dart b/lib/build/messages.dart
index 87f3fa3..8cf11d6 100644
--- a/lib/build/messages.dart
+++ b/lib/build/messages.dart
@@ -8,8 +8,10 @@
 import 'package:code_transformers/messages/messages.dart';
 
 const scriptFileNotFound = const MessageTemplate(
-    const MessageId('web_components', 0), 'Script file at "%-url-%" not found.',
-    'URL to a script file might be incorrect', '''
+    const MessageId('web_components', 0),
+    'Script file at "%-url-%" not found.',
+    'URL to a script file might be incorrect',
+    '''
 An error occurred trying to read a script tag on a given URL. This is often the
 result of a broken URL in a `<script src="...">`.
 ''');
@@ -17,7 +19,8 @@
 const scriptIncludedMoreThanOnce = const MessageTemplate(
     const MessageId('web_components', 1),
     'The `%-url-%` script was included more than once.',
-    'Dart script file included more than once.', '''
+    'Dart script file included more than once.',
+    '''
 Duplicate dart scripts often happen if you have multiple html imports that
 include the same script. The simplest workaround for this is to move your dart
 script to its own html file, and import that instead of the script (html imports
@@ -46,7 +49,8 @@
 const internalErrorDontKnowHowToImport = const MessageTemplate(
     const MessageId('web_components', 3),
     "internal error: don't know how to include %-target-% from"
-    " %-source-%.%-extra-%", "Internal error: don't know how to include a URL",
+    " %-source-%.%-extra-%",
+    "Internal error: don't know how to include a URL",
     '''
 Sorry, you just ran into a bug in the web_components transformer code. Please
 file a bug at <https://github.com/dart-lang/web-components/issues/new>
@@ -56,7 +60,8 @@
 
 const inlineImportFail = const MessageTemplate(
     const MessageId('web_components', 4),
-    'Failed to inline HTML import: %-error-%', 'Error while inlining an import',
+    'Failed to inline HTML import: %-error-%',
+    'Error while inlining an import',
     '''
 An error occurred while inlining an import in the web_components build. This is
 often the result of a broken HTML import.
diff --git a/lib/build/script_compactor.dart b/lib/build/script_compactor.dart
index 64fb318..7537cf6 100644
--- a/lib/build/script_compactor.dart
+++ b/lib/build/script_compactor.dart
@@ -162,8 +162,8 @@
         // the new source file.
         if (primaryInput == asset) {
           script.text = '';
-          script.attributes['src'] = path.url.relative(newId.path,
-              from: path.url.dirname(primaryInput.path));
+          script.attributes['src'] = path.url
+              .relative(newId.path, from: path.url.dirname(primaryInput.path));
         }
       });
     });
@@ -249,7 +249,8 @@
 
 /// Parse [code] and determine whether it has a library directive.
 bool _hasLibraryDirective(String code) =>
-    parseDirectives(code, suppressErrors: true).directives
+    parseDirectives(code, suppressErrors: true)
+        .directives
         .any((d) => d is LibraryDirective);
 
 /// Returns the dart import path to reach [id] relative to [primaryInput].
diff --git a/lib/src/init.dart b/lib/src/init.dart
index d2906ef..ba33239 100644
--- a/lib/src/init.dart
+++ b/lib/src/init.dart
@@ -18,7 +18,9 @@
 ///
 /// If a [typeFilter] or [customFilter] are supplied, only one phase is ran
 /// with the supplied filters.
-Future initWebComponents({List<Type> typeFilter, InitializerFilter customFilter,
+Future initWebComponents(
+    {List<Type> typeFilter,
+    InitializerFilter customFilter,
     bool initAll: true}) {
   if (typeFilter != null || customFilter != null) {
     return init.run(typeFilter: typeFilter, customFilter: customFilter);
diff --git a/test/build/html_import_annotation_recorder_test.dart b/test/build/html_import_annotation_recorder_test.dart
index b362c24..341f3a1 100644
--- a/test/build/html_import_annotation_recorder_test.dart
+++ b/test/build/html_import_annotation_recorder_test.dart
@@ -18,7 +18,9 @@
 
   test(name, () {
     // Run the transformer and test the output.
-    return applyTransformers([[transformer]],
+    return applyTransformers([
+      [transformer]
+    ],
         inputs: inputs,
         results: expected,
         formatter: StringFormatter.noNewlinesOrSurroundingWhitespace).then((_) {
diff --git a/test/build/import_inliner_test.dart b/test/build/import_inliner_test.dart
index b183538..94eb40f 100644
--- a/test/build/import_inliner_test.dart
+++ b/test/build/import_inliner_test.dart
@@ -10,7 +10,9 @@
 import 'package:test/test.dart';
 
 var transformer = new ImportInlinerTransformer(null, ['{{', '[[']);
-var phases = [[transformer]];
+var phases = [
+  [transformer]
+];
 
 main() {
   group('rel=import', importTests);
@@ -20,27 +22,37 @@
 }
 
 void importTests() {
-  testPhases('no imports', phases, {
-    'a|web/index.html': '''
+  testPhases(
+      'no imports',
+      phases,
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html><html><head></head><body></body></html>''',
-  }, {
-    'a|web/index.html': '''
+      },
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html><html><head></head><body></body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('one import, removes dart script', phases, {
-    'a|web/index.html': '''
+  testPhases(
+      'one import, removes dart script',
+      phases,
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html>
         <html>
           <head><link rel="import" href="packages/a/foo.html"></head>
           <body></body>
         </html>''',
-    'a|lib/foo.html': '''
+        'a|lib/foo.html': '''
         <div>hello from foo!</div>
         <script type="application/dart" src="foo.dart"></script>
         ''',
-  }, {
-    'a|web/index.html': '''
+      },
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html>
         <html>
           <head></head>
@@ -50,22 +62,28 @@
             </div>
           </body>
         </html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('preserves order of scripts', phases, {
-    'a|web/index.html': '''
+  testPhases(
+      'preserves order of scripts',
+      phases,
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html><html><head>
         <script type="text/javascript">/*first*/</script>
         <script src="second.js"></script>
         <link rel="import" href="packages/a/foo.html">
         <script>/*forth*/</script>
         </head></html>''',
-    'a|lib/foo.html': '''
+        'a|lib/foo.html': '''
         <!DOCTYPE html><html><head><script>/*third*/</script>
         </head><body><polymer-element>2</polymer-element></html>''',
-    'a|web/second.js': '/*second*/'
-  }, {
-    'a|web/index.html': '''
+        'a|web/second.js': '/*second*/'
+      },
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html><html><head>
         <script type="text/javascript">/*first*/</script>
         <script src="second.js"></script>
@@ -76,10 +94,15 @@
         <script>/*forth*/</script>
         </div>
         </body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('preserves order of scripts, extract Dart scripts', phases, {
-    'a|web/index.html': '''
+  testPhases(
+      'preserves order of scripts, extract Dart scripts',
+      phases,
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -89,7 +112,7 @@
             <script type="application/dart">/*fifth*/</script>
           </head>
         </html>''',
-    'a|web/test2.html': '''
+        'a|web/test2.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -100,9 +123,10 @@
             <polymer-element>2</polymer-element>
           </body>
         </html>''',
-    'a|web/second.js': '/*second*/'
-  }, {
-    'a|web/index.html': '''
+        'a|web/second.js': '/*second*/'
+      },
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -117,7 +141,7 @@
             </div>
           </body>
         </html>''',
-    'a|web/test2.html': '''
+        'a|web/test2.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -128,40 +152,52 @@
             <polymer-element>2</polymer-element>
           </body>
         </html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('no transformation outside web/', phases, {
-    'a|lib/test.html': '''
+  testPhases(
+      'no transformation outside web/',
+      phases,
+      {
+        'a|lib/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test2.html">
         </head></html>''',
-    'a|lib/test2.html': '''
+        'a|lib/test2.html': '''
         <!DOCTYPE html><html><head>
         </head><body><polymer-element>2</polymer-element></html>''',
-  }, {
-    'a|lib/test.html': '''
+      },
+      {
+        'a|lib/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test2.html">
         </head></html>''',
-    'a|lib/test2.html': '''
+        'a|lib/test2.html': '''
         <!DOCTYPE html><html><head>
         </head><body><polymer-element>2</polymer-element></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('shallow, elements, many', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'shallow, elements, many',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test2.html">
         <link rel="import" href="test3.html">
         </head></html>''',
-    'a|web/test2.html': '''
+        'a|web/test2.html': '''
         <!DOCTYPE html><html><head>
         </head><body><polymer-element>2</polymer-element></html>''',
-    'a|web/test3.html': '''
+        'a|web/test3.html': '''
         <!DOCTYPE html><html><head>
         </head><body><polymer-element>3</polymer-element></html>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -169,32 +205,38 @@
         <polymer-element>3</polymer-element>
         </div>
         </body></html>''',
-    'a|web/test2.html': '''
+        'a|web/test2.html': '''
         <!DOCTYPE html><html><head>
         </head><body><polymer-element>2</polymer-element></html>''',
-    'a|web/test3.html': '''
+        'a|web/test3.html': '''
         <!DOCTYPE html><html><head>
         </head><body><polymer-element>3</polymer-element></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('deep, elements, one per file', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'deep, elements, one per file',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test2.html">
         </head></html>''',
-    'a|web/test2.html': '''
+        'a|web/test2.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="assets/b/test3.html">
         </head><body><polymer-element>2</polymer-element></html>''',
-    'b|asset/test3.html': '''
+        'b|asset/test3.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="../../packages/c/test4.html">
         </head><body><polymer-element>3</polymer-element></html>''',
-    'c|lib/test4.html': '''
+        'c|lib/test4.html': '''
         <!DOCTYPE html><html><head>
         </head><body><polymer-element>4</polymer-element></html>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -203,7 +245,7 @@
         <polymer-element>2</polymer-element>
         </div>
         </body></html>''',
-    'a|web/test2.html': '''
+        'a|web/test2.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -212,45 +254,51 @@
         </div>
         <polymer-element>2</polymer-element>
         </body></html>''',
-    'b|asset/test3.html': '''
+        'b|asset/test3.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="../../packages/c/test4.html">
         </head><body><polymer-element>3</polymer-element></html>''',
-    'c|lib/test4.html': '''
+        'c|lib/test4.html': '''
         <!DOCTYPE html><html><head>
         </head><body><polymer-element>4</polymer-element></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('deep, elements, many imports', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'deep, elements, many imports',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test2a.html">
         <link rel="import" href="test2b.html">
         </head></html>''',
-    'a|web/test2a.html': '''
+        'a|web/test2a.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test3a.html">
         <link rel="import" href="test3b.html">
         </head><body><polymer-element>2a</polymer-element></body></html>''',
-    'a|web/test2b.html': '''
+        'a|web/test2b.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test4a.html">
         <link rel="import" href="test4b.html">
         </head><body><polymer-element>2b</polymer-element></body></html>''',
-    'a|web/test3a.html': '''
+        'a|web/test3a.html': '''
         <!DOCTYPE html><html><head>
         </head><body><polymer-element>3a</polymer-element></body></html>''',
-    'a|web/test3b.html': '''
+        'a|web/test3b.html': '''
         <!DOCTYPE html><html><head>
         </head><body><polymer-element>3b</polymer-element></body></html>''',
-    'a|web/test4a.html': '''
+        'a|web/test4a.html': '''
         <!DOCTYPE html><html><head>
         </head><body><polymer-element>4a</polymer-element></body></html>''',
-    'a|web/test4b.html': '''
+        'a|web/test4b.html': '''
         <!DOCTYPE html><html><head>
         </head><body><polymer-element>4b</polymer-element></body></html>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -262,7 +310,7 @@
         <polymer-element>2b</polymer-element>
         </div>
         </body></html>''',
-    'a|web/test2a.html': '''
+        'a|web/test2a.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -271,7 +319,7 @@
         </div>
         <polymer-element>2a</polymer-element>
         </body></html>''',
-    'a|web/test2b.html': '''
+        'a|web/test2b.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -280,43 +328,49 @@
         </div>
         <polymer-element>2b</polymer-element>
         </body></html>''',
-    'a|web/test3a.html': '''
+        'a|web/test3a.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <polymer-element>3a</polymer-element>
         </body></html>''',
-    'a|web/test3b.html': '''
+        'a|web/test3b.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <polymer-element>3b</polymer-element>
         </body></html>''',
-    'a|web/test4a.html': '''
+        'a|web/test4a.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <polymer-element>4a</polymer-element>
         </body></html>''',
-    'a|web/test4b.html': '''
+        'a|web/test4b.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <polymer-element>4b</polymer-element>
         </body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('imports cycle, 1-step lasso', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'imports cycle, 1-step lasso',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_1.html">
         </head></html>''',
-    'a|web/test_1.html': '''
+        'a|web/test_1.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_2.html">
         </head><body><polymer-element>1</polymer-element></html>''',
-    'a|web/test_2.html': '''
+        'a|web/test_2.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_1.html">
         </head><body><polymer-element>2</polymer-element></html>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -324,39 +378,45 @@
         <polymer-element>1</polymer-element>
         </div>
         </body></html>''',
-    'a|web/test_1.html': '''
+        'a|web/test_1.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
         <polymer-element>2</polymer-element>
         </div>
         <polymer-element>1</polymer-element></body></html>''',
-    'a|web/test_2.html': '''
+        'a|web/test_2.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
         <polymer-element>1</polymer-element>
         </div>
         <polymer-element>2</polymer-element></body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('imports cycle, 1-step lasso, scripts too', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'imports cycle, 1-step lasso, scripts too',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_1.html">
         </head></html>''',
-    'a|web/test_1.html': '''
+        'a|web/test_1.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_2.html">
         </head><body><polymer-element>1</polymer-element>
         <script src="s1"></script></html>''',
-    'a|web/test_2.html': '''
+        'a|web/test_2.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_1.html">
         </head><body><polymer-element>2</polymer-element>
         <script src="s2"></script></html>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -366,7 +426,7 @@
         <script src="s1"></script>
         </div>
         </body></html>''',
-    'a|web/test_1.html': '''
+        'a|web/test_1.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -375,7 +435,7 @@
         </div>
         <polymer-element>1</polymer-element>
         <script src="s1"></script></body></html>''',
-    'a|web/test_2.html': '''
+        'a|web/test_2.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -384,30 +444,36 @@
         </div>
         <polymer-element>2</polymer-element>
         <script src="s2"></script></body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('imports cycle, 1-step lasso, Dart scripts too', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'imports cycle, 1-step lasso, Dart scripts too',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_1.html">
         </head></html>''',
-    'a|web/test_1.html': '''
+        'a|web/test_1.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_2.html">
         </head><body><polymer-element>1</polymer-element>
         <script type="application/dart" src="s1.dart"></script>
         </html>''',
-    'a|web/test_2.html': '''
+        'a|web/test_2.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_1.html">
         </head><body><polymer-element>2
         <script type="application/dart" src="s2.dart"></script>
         </polymer-element>
         </html>''',
-    'a|web/s1.dart': '',
-    'a|web/s2.dart': '',
-  }, {
-    'a|web/test.html': '''
+        'a|web/s1.dart': '',
+        'a|web/s2.dart': '',
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -415,7 +481,7 @@
         <polymer-element>1</polymer-element>
         </div>
         </body></html>''',
-    'a|web/test_1.html': '''
+        'a|web/test_1.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -424,7 +490,7 @@
         <polymer-element>1</polymer-element>
         <script type="application/dart" src="s1.dart"></script>
         </body></html>''',
-    'a|web/test_2.html': '''
+        'a|web/test_2.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -434,14 +500,19 @@
         <script type="application/dart" src="s2.dart"></script>
         </polymer-element>
         </body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('imports with Dart script after JS script', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'imports with Dart script after JS script',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_1.html">
         </head></html>''',
-    'a|web/test_1.html': '''
+        'a|web/test_1.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_1.html">
         </head><body>
@@ -451,9 +522,10 @@
         <script type="application/dart" src="s1.dart"></script>
         </polymer-element>
         'FOO'</body></html>''',
-    'a|web/s1.dart': '',
-  }, {
-    'a|web/test.html': '''
+        'a|web/s1.dart': '',
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -464,7 +536,7 @@
         'FOO'
         </div>
         </body></html>''',
-    'a|web/test_1.html': '''
+        'a|web/test_1.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <foo>42</foo><bar-baz></bar-baz>
@@ -473,27 +545,33 @@
         <script type="application/dart" src="s1.dart"></script>
         </polymer-element>
         'FOO'</body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('imports cycle, 2-step lasso', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'imports cycle, 2-step lasso',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_1.html">
         </head></html>''',
-    'a|web/test_1.html': '''
+        'a|web/test_1.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_2.html">
         </head><body><polymer-element>1</polymer-element></html>''',
-    'a|web/test_2.html': '''
+        'a|web/test_2.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_3.html">
         </head><body><polymer-element>2</polymer-element></html>''',
-    'a|web/test_3.html': '''
+        'a|web/test_3.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_1.html">
         </head><body><polymer-element>3</polymer-element></html>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -502,7 +580,7 @@
         <polymer-element>1</polymer-element>
         </div>
         </body></html>''',
-    'a|web/test_1.html': '''
+        'a|web/test_1.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -510,7 +588,7 @@
         <polymer-element>2</polymer-element>
         </div>
         <polymer-element>1</polymer-element></body></html>''',
-    'a|web/test_2.html': '''
+        'a|web/test_2.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -518,7 +596,7 @@
         <polymer-element>3</polymer-element>
         </div>
         <polymer-element>2</polymer-element></body></html>''',
-    'a|web/test_3.html': '''
+        'a|web/test_3.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -526,50 +604,62 @@
         <polymer-element>1</polymer-element>
         </div>
         <polymer-element>3</polymer-element></body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('imports cycle, self cycle', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'imports cycle, self cycle',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_1.html">
         </head></html>''',
-    'a|web/test_1.html': '''
+        'a|web/test_1.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_1.html">
         </head><body><polymer-element>1</polymer-element></html>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
         <polymer-element>1</polymer-element>
         </div>
         </body></html>''',
-    'a|web/test_1.html': '''
+        'a|web/test_1.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <polymer-element>1</polymer-element></body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('imports DAG', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'imports DAG',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_1.html">
         <link rel="import" href="test_2.html">
         </head></html>''',
-    'a|web/test_1.html': '''
+        'a|web/test_1.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_3.html">
         </head><body><polymer-element>1</polymer-element></body></html>''',
-    'a|web/test_2.html': '''
+        'a|web/test_2.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="test_3.html">
         </head><body><polymer-element>2</polymer-element></body></html>''',
-    'a|web/test_3.html': '''
+        'a|web/test_3.html': '''
         <!DOCTYPE html><html><head>
         </head><body><polymer-element>3</polymer-element></body></html>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
@@ -578,256 +668,332 @@
         <polymer-element>2</polymer-element>
         </div>
         </body></html>''',
-    'a|web/test_1.html': '''
+        'a|web/test_1.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
         <polymer-element>3</polymer-element>
         </div>
         <polymer-element>1</polymer-element></body></html>''',
-    'a|web/test_2.html': '''
+        'a|web/test_2.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <div hidden="">
         <polymer-element>3</polymer-element>
         </div>
         <polymer-element>2</polymer-element></body></html>''',
-    'a|web/test_3.html': '''
+        'a|web/test_3.html': '''
         <!DOCTYPE html><html><head>
         </head><body>
         <polymer-element>3</polymer-element></body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('missing html imports throw errors', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'missing html imports throw errors',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="foo.html">
         </head></html>''',
-  }, {}, messages: [
-    'warning: ${inlineImportFail.create({
+      },
+      {},
+      messages: [
+        'warning: ${inlineImportFail.create({
           'error': 'Could not find asset a|web/foo.html.'
       }).snippet} '
-        '(web/test.html 1 8)',
-  ], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+            '(web/test.html 1 8)',
+      ],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('absolute uri', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'absolute uri',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="stylesheet" href="/foo.css">
         </head></html>''',
-    'a|web/test2.html': '''
+        'a|web/test2.html': '''
         <!DOCTYPE html><html><head>
         <link rel="stylesheet" href="http:example.com/bar.css">
         </head></html>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="stylesheet" href="/foo.css">
         </head></html>''',
-    'a|web/test2.html': '''
+        'a|web/test2.html': '''
         <!DOCTYPE html><html><head>
         <link rel="stylesheet" href="http:example.com/bar.css">
         </head></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 }
 
 void urlAttributeTests() {
-  testPhases('url attributes are normalized', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'url attributes are normalized',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="foo/test_1.html">
         <link rel="import" href="foo/test_2.html">
         </head></html>''',
-    'a|web/foo/test_1.html': '''
+        'a|web/foo/test_1.html': '''
         <script src="baz.jpg"></script>''',
-    'a|web/foo/test_2.html': '''
+        'a|web/foo/test_2.html': '''
         <foo-element src="baz.jpg"></foo-element>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head></head><body>
         <div hidden="">
         <script src="foo/baz.jpg"></script>
         <foo-element src="baz.jpg"></foo-element>
         </div>
         </body></html>''',
-    'a|web/foo/test_1.html': '''
+        'a|web/foo/test_1.html': '''
         <script src="baz.jpg"></script>''',
-    'a|web/foo/test_2.html': '''
+        'a|web/foo/test_2.html': '''
         <foo-element src="baz.jpg"></foo-element>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('paths with an invalid prefix are not normalized', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'paths with an invalid prefix are not normalized',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="packages/a/test.html">
         </head></html>''',
-    'a|lib/test.html': '''
+        'a|lib/test.html': '''
         <img src="[[bar]]">''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head></head><body>
         <div hidden="">
         <img src="[[bar]]">
         </div>
         </body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('relative paths followed by invalid characters are normalized',
-      phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'relative paths followed by invalid characters are normalized',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="foo/test.html">
         </head></html>''',
-    'a|web/foo/test.html': '''
+        'a|web/foo/test.html': '''
         <img src="baz/{{bar}}">
         <img src="./{{bar}}">''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head></head><body>
         <div hidden="">
         <img src="foo/baz/{{bar}}">
         <img src="foo/{{bar}}">
         </div>
         </body></html>''',
-  }, formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('relative paths in _* attributes are normalized', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'relative paths in _* attributes are normalized',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="foo/test.html">
         </head></html>''',
-    'a|web/foo/test.html': '''
+        'a|web/foo/test.html': '''
         <img _src="./{{bar}}">
         <a _href="./{{bar}}">test</a>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head></head><body>
         <div hidden="">
         <img _src="foo/{{bar}}">
         <a _href="foo/{{bar}}">test</a>
         </div>
         </body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('paths starting with a binding are treated as absolute', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'paths starting with a binding are treated as absolute',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="packages/a/foo.html">
         </head></html>''',
-    'a|lib/foo.html': '''
+        'a|lib/foo.html': '''
         <img _src="{{bar}}">
         <img _src="[[bar]]">''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head></head><body>
         <div hidden="">
           <img _src="{{bar}}">
           <img _src="[[bar]]">
         </div>
         </body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('arbitrary bindings can exist in paths', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'arbitrary bindings can exist in paths',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head></head><body>
         <img src="./{{(bar[2] + baz[\'foo\']) * 14 / foobar() - 0.5}}.jpg">
         <img src="./[[bar[2]]].jpg">
         </body></html>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head></head><body>
         <img src="{{(bar[2] + baz[\'foo\']) * 14 / foobar() - 0.5}}.jpg">
         <img src="[[bar[2]]].jpg">
         </body></html>''',
-  }, formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('multiple bindings can exist in paths', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'multiple bindings can exist in paths',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head></head><body>
         <img src="./{{bar[0]}}/{{baz[1]}}.{{extension}}">
         </body></html>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head></head><body>
         <img src="{{bar[0]}}/{{baz[1]}}.{{extension}}">
         </body></html>''',
-  }, formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('relative paths in deep imports', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'relative paths in deep imports',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="foo/foo.html">
         </head></html>''',
-    'a|web/foo/foo.html': '''
+        'a|web/foo/foo.html': '''
         <link rel="import" href="bar.html">''',
-    'a|web/foo/bar.html': '''
+        'a|web/foo/bar.html': '''
         <style rel="stylesheet" href="baz.css"></style>
         <style rel="stylesheet" href="../css/zap.css"></style>''',
-    'a|web/foo/baz.css': '',
-    'a|web/css/zap.css': '',
-  }, {
-    'a|web/test.html': '''
+        'a|web/foo/baz.css': '',
+        'a|web/css/zap.css': '',
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head></head><body>
         <div hidden="">
           <style rel="stylesheet" href="foo/baz.css"></style>
           <style rel="stylesheet" href="css/zap.css"></style>
         </div>
         </body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 }
 
 void entryPointTests() {
-  testPhases('one level deep entry points normalize correctly', phases, {
-    'a|web/test/test.html': '''
+  testPhases(
+      'one level deep entry points normalize correctly',
+      phases,
+      {
+        'a|web/test/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="../../packages/a/foo/foo.html">
         </head></html>''',
-    'a|lib/foo/foo.html': '''
+        'a|lib/foo/foo.html': '''
         <script rel="import" href="../../../packages/b/bar/bar.js">
         </script>''',
-    'b|lib/bar/bar.js': '''
+        'b|lib/bar/bar.js': '''
         console.log("here");''',
-  }, {
-    'a|web/test/test.html': '''
+      },
+      {
+        'a|web/test/test.html': '''
         <!DOCTYPE html><html><head></head><body>
         <div hidden="">
         <script rel="import" href="../packages/b/bar/bar.js"></script>
         </div>
         </body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('includes in entry points normalize correctly', phases, {
-    'a|web/test/test.html': '''
+  testPhases(
+      'includes in entry points normalize correctly',
+      phases,
+      {
+        'a|web/test/test.html': '''
         <!DOCTYPE html><html><head>
         <script src="packages/a/foo/bar.js"></script>
         </head></html>''',
-    'a|lib/foo/bar.js': '''
+        'a|lib/foo/bar.js': '''
         console.log("here");''',
-  }, {
-    'a|web/test/test.html': '''
+      },
+      {
+        'a|web/test/test.html': '''
         <!DOCTYPE html><html><head>
         <script src="../packages/a/foo/bar.js"></script>
         </head><body>
         </body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('two level deep entry points normalize correctly', phases, {
-    'a|web/test/well/test.html': '''
+  testPhases(
+      'two level deep entry points normalize correctly',
+      phases,
+      {
+        'a|web/test/well/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="../../../packages/a/foo/foo.html">
         </head></html>''',
-    'a|lib/foo/foo.html': '''
+        'a|lib/foo/foo.html': '''
         <script rel="import" href="../../../packages/b/bar/bar.js"></script>''',
-    'b|lib/bar/bar.js': '''
+        'b|lib/bar/bar.js': '''
         console.log("here");''',
-  }, {
-    'a|web/test/well/test.html': '''
+      },
+      {
+        'a|web/test/well/test.html': '''
         <!DOCTYPE html><html><head></head><body>
         <div hidden="">
         <script rel="import" href="../../packages/b/bar/bar.js"></script>
         </div>
         </body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 }
 
 // void templateTests() {
diff --git a/test/build/mirrors_remover_test.dart b/test/build/mirrors_remover_test.dart
index de1a70c..53ae97e 100644
--- a/test/build/mirrors_remover_test.dart
+++ b/test/build/mirrors_remover_test.dart
@@ -10,7 +10,9 @@
 
 main() {
   var transformer = new MirrorsRemoverTransformer();
-  var phases = [[transformer]];
+  var phases = [
+    [transformer]
+  ];
 
   testPhases('basic', phases, {
     'a|lib/src/init.dart': '''
diff --git a/test/build/script_compactor_test.dart b/test/build/script_compactor_test.dart
index 225783d..11c8c96 100644
--- a/test/build/script_compactor_test.dart
+++ b/test/build/script_compactor_test.dart
@@ -10,7 +10,9 @@
 import 'package:test/test.dart';
 
 var transformer = new ScriptCompactorTransformer();
-var phases = [[transformer]];
+var phases = [
+  [transformer]
+];
 
 main() {
   group('basic', basicTests);
@@ -20,32 +22,41 @@
 }
 
 void basicTests() {
-  testPhases('single script', phases, {
-    'a|web/index.html': '''
+  testPhases(
+      'single script',
+      phases,
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html><html><head></head><body>
           <script type="application/dart" src="index.dart"></script>
         </body></html>''',
-    'a|web/index.dart': '''
+        'a|web/index.dart': '''
         library a.index;
         main(){}''',
-  }, {
-    'a|web/index.html': '''
+      },
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html><html><head></head><body>
         <script type="application/dart" src="index.bootstrap.dart"></script>
         </body></html>''',
-    'a|web/index.bootstrap.dart': '''
+        'a|web/index.bootstrap.dart': '''
         library a.web.index_bootstrap_dart;
 
         import 'index.dart' as i0;
 
         main() => i0.main();''',
-    'a|web/index.dart': '''
+        'a|web/index.dart': '''
         library a.index;
         main(){}''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('multiple scripts from nested html import', phases, {
-    'a|web/index.html': '''
+  testPhases(
+      'multiple scripts from nested html import',
+      phases,
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html><html>
           <head>
             <link rel="import" href="packages/b/a.html">
@@ -54,20 +65,23 @@
             <script type="application/dart" src="index.dart"></script>
           </body>
         </body></html>''',
-    'a|web/index.dart': '''
+        'a|web/index.dart': '''
         library a.index;
         main(){}''',
-    'b|lib/a.html': '''
+        'b|lib/a.html': '''
         <link rel="import" href="b/b.html">
         <link rel="import" href="../../packages/c/c.html">
         <script type="application/dart" src="a.dart"></script>''',
-    'b|lib/b/b.html': '<script type="application/dart" src="b.dart"></script>',
-    'b|lib/a.dart': 'library b.a;',
-    'b|lib/b/b.dart': 'library b.b.b;',
-    'c|lib/c.html': '<script type="application/dart" src="c.dart"></script>',
-    'c|lib/c.dart': 'library c.c;',
-  }, {
-    'a|web/index.html': '''
+        'b|lib/b/b.html':
+            '<script type="application/dart" src="b.dart"></script>',
+        'b|lib/a.dart': 'library b.a;',
+        'b|lib/b/b.dart': 'library b.b.b;',
+        'c|lib/c.html':
+            '<script type="application/dart" src="c.dart"></script>',
+        'c|lib/c.dart': 'library c.c;',
+      },
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html><html>
         <head>
           <link rel="import" href="packages/b/a.html">
@@ -75,7 +89,7 @@
         <body>
           <script type="application/dart" src="index.bootstrap.dart"></script>
         </body></html>''',
-    'a|web/index.bootstrap.dart': '''
+        'a|web/index.bootstrap.dart': '''
         library a.web.index_bootstrap_dart;
 
         import 'package:b/b/b.dart' as i0;
@@ -84,14 +98,19 @@
         import 'index.dart' as i3;
 
         main() => i3.main();''',
-    'b|lib/a.html': '''
+        'b|lib/a.html': '''
         <link rel="import" href="b/b.html">
         <link rel="import" href="../../packages/c/c.html">
         <script type="application/dart" src="a.dart"></script>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('inline scripts', phases, {
-    'a|web/index.html': '''
+  testPhases(
+      'inline scripts',
+      phases,
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -104,14 +123,15 @@
             </script>
           </body>
         </html>''',
-    'a|lib/foo.html': '''
+        'a|lib/foo.html': '''
         <script type="application/dart">
           library a.foo;
 
           import 'bar.dart';
         </script>''',
-  }, {
-    'a|web/index.html': '''
+      },
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -121,251 +141,325 @@
             <script type="application/dart" src="index.bootstrap.dart"></script>
           </body>
         </html>''',
-    'a|web/index.html.1.dart': '''
+        'a|web/index.html.1.dart': '''
         library a.index;
         main(){}''',
-    'a|web/index.html.0.dart': '''
+        'a|web/index.html.0.dart': '''
         library a.foo;
 
         import 'package:a/bar.dart';''',
-    'a|web/index.bootstrap.dart': '''
+        'a|web/index.bootstrap.dart': '''
         library a.web.index_bootstrap_dart;
 
         import 'index.html.0.dart' as i0;
         import 'index.html.1.dart' as i1;
 
         main() => i1.main();''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('Cleans library names generated from file paths.', phases, {
-    'a|web/01_test.html': '''
+  testPhases(
+      'Cleans library names generated from file paths.',
+      phases,
+      {
+        'a|web/01_test.html': '''
         <!DOCTYPE html><html><head>
         <script type="application/dart">/*1*/</script>
         </head></html>''',
-    'a|web/foo_02_test.html': '''
+        'a|web/foo_02_test.html': '''
         <!DOCTYPE html><html><head>
         <script type="application/dart">/*2*/</script>
         </head></html>''',
-    'a|web/test_03.html': '''
+        'a|web/test_03.html': '''
         <!DOCTYPE html><html><head>
         <script type="application/dart">/*3*/</script>
         </head></html>''',
-    'a|web/*test_%foo_04!.html': '''
+        'a|web/*test_%foo_04!.html': '''
         <!DOCTYPE html><html><head>
         <script type="application/dart">/*4*/</script>
         </head></html>''',
-    'a|web/%05_test.html': '''
+        'a|web/%05_test.html': '''
         <!DOCTYPE html><html><head>
         <script type="application/dart">/*5*/</script>
         </head></html>''',
-  }, {
-    // Appends an _ if it starts with a number.
-    'a|web/01_test.html.0.dart': 'library a.web._01_test_html_0;\n/*1*/',
-    // Allows numbers in the middle.
-    'a|web/foo_02_test.html.0.dart': 'library a.web.foo_02_test_html_0;\n/*2*/',
-    // Allows numbers at the end.
-    'a|web/test_03.html.0.dart': 'library a.web.test_03_html_0;\n/*3*/',
-    // Replaces invalid characters with _.
-    'a|web/*test_%foo_04!.html.0.dart':
-        'library a.web._test__foo_04__html_0;\n/*4*/',
-    // Replace invalid character followed by number.
-    'a|web/%05_test.html.0.dart': 'library a.web._05_test_html_0;\n/*5*/',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      {
+        // Appends an _ if it starts with a number.
+        'a|web/01_test.html.0.dart': 'library a.web._01_test_html_0;\n/*1*/',
+        // Allows numbers in the middle.
+        'a|web/foo_02_test.html.0.dart':
+            'library a.web.foo_02_test_html_0;\n/*2*/',
+        // Allows numbers at the end.
+        'a|web/test_03.html.0.dart': 'library a.web.test_03_html_0;\n/*3*/',
+        // Replaces invalid characters with _.
+        'a|web/*test_%foo_04!.html.0.dart':
+            'library a.web._test__foo_04__html_0;\n/*4*/',
+        // Replace invalid character followed by number.
+        'a|web/%05_test.html.0.dart': 'library a.web._05_test_html_0;\n/*5*/',
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('file names with hyphens are ok', phases, {
-    'a|web/a-b.html': '''
+  testPhases(
+      'file names with hyphens are ok',
+      phases,
+      {
+        'a|web/a-b.html': '''
         <!DOCTYPE html><html><head></head><body>
           <script type="application/dart" src="a-b.dart"></script>
         </body></html>''',
-    'a|web/a-b.dart': '''
+        'a|web/a-b.dart': '''
         library a.a_b;
         main(){}''',
-  }, {
-    'a|web/a-b.html': '''
+      },
+      {
+        'a|web/a-b.html': '''
         <!DOCTYPE html><html><head></head><body>
         <script type="application/dart" src="a-b.bootstrap.dart"></script>
         </body></html>''',
-    'a|web/a-b.bootstrap.dart': '''
+        'a|web/a-b.bootstrap.dart': '''
         library a.web.a_b_bootstrap_dart;
 
         import 'a-b.dart' as i0;
 
         main() => i0.main();''',
-    'a|web/a-b.dart': '''
+        'a|web/a-b.dart': '''
         library a.a_b;
         main(){}''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('package names with hyphens give an error', phases, {
-    'a-b|web/a.html': '''
+  testPhases(
+      'package names with hyphens give an error',
+      phases,
+      {
+        'a-b|web/a.html': '''
         <!DOCTYPE html><html><head></head><body>
           <script type="application/dart" src="a.dart"></script>
         </body></html>''',
-    'a-b|web/a.dart': '''
+        'a-b|web/a.dart': '''
         library a.a;
         main(){}''',
-  }, {}, messages: [
-    'error: Invalid package name `a-b`. Package names should be '
-    'valid dart identifiers, as indicated at '
-    'https://www.dartlang.org/tools/pub/pubspec.html#name.'
-  ], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      {},
+      messages: [
+        'error: Invalid package name `a-b`. Package names should be '
+            'valid dart identifiers, as indicated at '
+            'https://www.dartlang.org/tools/pub/pubspec.html#name.'
+      ],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('package names that start with a period are not allowed', phases, {
-    '.a|web/a.html': '''
+  testPhases(
+      'package names that start with a period are not allowed',
+      phases,
+      {
+        '.a|web/a.html': '''
         <!DOCTYPE html><html><head></head><body>
           <script type="application/dart" src="a.dart"></script>
         </body></html>''',
-    '.a|web/a.dart': '''
+        '.a|web/a.dart': '''
         library a.a;
         main(){}''',
-  }, {}, messages: [
-    'error: Invalid package name `.a`. Package names should be '
-    'valid dart identifiers, as indicated at '
-    'https://www.dartlang.org/tools/pub/pubspec.html#name.'
-  ], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      {},
+      messages: [
+        'error: Invalid package name `.a`. Package names should be '
+            'valid dart identifiers, as indicated at '
+            'https://www.dartlang.org/tools/pub/pubspec.html#name.'
+      ],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('package names that end with a period are not allowed', phases, {
-    'a.|web/a.html': '''
+  testPhases(
+      'package names that end with a period are not allowed',
+      phases,
+      {
+        'a.|web/a.html': '''
         <!DOCTYPE html><html><head></head><body>
           <script type="application/dart" src="a.dart"></script>
         </body></html>''',
-    'a.|web/a.dart': '''
+        'a.|web/a.dart': '''
         library a.a;
         main(){}''',
-  }, {}, messages: [
-    'error: Invalid package name `a.`. Package names should be '
-    'valid dart identifiers, as indicated at '
-    'https://www.dartlang.org/tools/pub/pubspec.html#name.'
-  ], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      {},
+      messages: [
+        'error: Invalid package name `a.`. Package names should be '
+            'valid dart identifiers, as indicated at '
+            'https://www.dartlang.org/tools/pub/pubspec.html#name.'
+      ],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('package names with double periods are not allowed', phases, {
-    'a..b|web/a.html': '''
+  testPhases(
+      'package names with double periods are not allowed',
+      phases,
+      {
+        'a..b|web/a.html': '''
         <!DOCTYPE html><html><head></head><body>
           <script type="application/dart" src="a.dart"></script>
         </body></html>''',
-    'a..b|web/a.dart': '''
+        'a..b|web/a.dart': '''
         library a.a;
         main(){}''',
-  }, {}, messages: [
-    'error: Invalid package name `a..b`. Package names should be '
-    'valid dart identifiers, as indicated at '
-    'https://www.dartlang.org/tools/pub/pubspec.html#name.'
-  ], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      {},
+      messages: [
+        'error: Invalid package name `a..b`. Package names should be '
+            'valid dart identifiers, as indicated at '
+            'https://www.dartlang.org/tools/pub/pubspec.html#name.'
+      ],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('package names with internal periods are allowed', phases, {
-    'a.b|web/a.html': '''
+  testPhases(
+      'package names with internal periods are allowed',
+      phases,
+      {
+        'a.b|web/a.html': '''
         <!DOCTYPE html><html><head></head><body>
           <script type="application/dart" src="a.dart"></script>
         </body></html>''',
-    'a.b|web/a.dart': '''
+        'a.b|web/a.dart': '''
         library a.b.a;
         main(){}''',
-  }, {
-    'a.b|web/a.bootstrap.dart': '''
+      },
+      {
+        'a.b|web/a.bootstrap.dart': '''
       library a.b.web.a_bootstrap_dart;
 
       import 'a.dart' as i0;
 
       main() => i0.main();''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 }
 
 void codeExtractorTests() {
-  testPhases('no dart script', phases, {
-    'a|web/test.html': '<!DOCTYPE html><html></html>',
-  }, {}, messages: [
-    'error: Found either zero or multiple dart scripts in the entry point '
-        '`web/test.html`. Exactly one was expected.',
-  ], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+  testPhases('no dart script', phases,
+      {'a|web/test.html': '<!DOCTYPE html><html></html>',}, {},
+      messages: [
+        'error: Found either zero or multiple dart scripts in the entry point '
+            '`web/test.html`. Exactly one was expected.',
+      ],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('single script, no library in script', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'single script, no library in script',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <script type="application/dart">main() { }</script>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
           <script type="application/dart" src="test.bootstrap.dart">
           </script>
         </head><body></body></html>''',
-    'a|web/test.html.0.dart': '''
+        'a|web/test.html.0.dart': '''
         library a.web.test_html_0;
         main() { }''',
-    'a|web/test.bootstrap.dart': '''
+        'a|web/test.bootstrap.dart': '''
         library a.web.test_bootstrap_dart;
 
         import 'test.html.0.dart' as i0;
 
         main() => i0.main();''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('single script, with library', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'single script, with library',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <script type="application/dart">
           library f;
           main() { }
         </script>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
           <script type="application/dart" src="test.bootstrap.dart">
           </script>
         </head><body></body></html>''',
-    'a|web/test.html.0.dart': '''
+        'a|web/test.html.0.dart': '''
         library f;
         main() { }''',
-    'a|web/test.bootstrap.dart': '''
+        'a|web/test.bootstrap.dart': '''
         library a.web.test_bootstrap_dart;
 
         import 'test.html.0.dart' as i0;
 
         main() => i0.main();''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('under lib/ directory not transformed', phases, {
-    'a|lib/test.html': '''
+  testPhases(
+      'under lib/ directory not transformed',
+      phases,
+      {
+        'a|lib/test.html': '''
         <!DOCTYPE html><html><head>
         <script type="application/dart">
           library f;
           main() { }
         </script>''',
-  }, {
-    'a|lib/test.html': '''
+      },
+      {
+        'a|lib/test.html': '''
         <!DOCTYPE html><html><head>
         <script type="application/dart">
           library f;
           main() { }
         </script>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('multiple scripts - error', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'multiple scripts - error',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <script type="application/dart">
             library a1;
             main1() { }
         </script>
         <script type="application/dart">library a2;\nmain2() { }</script>''',
-  }, {}, messages: [
-    'error: Found either zero or multiple dart scripts in the entry point '
-        '`web/test.html`. Exactly one was expected.',
-  ], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      {},
+      messages: [
+        'error: Found either zero or multiple dart scripts in the entry point '
+            '`web/test.html`. Exactly one was expected.',
+      ],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('multiple imported scripts', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'multiple imported scripts',
+      phases,
+      {
+        'a|web/test.html': '''
         <link rel="import" href="test2.html">
         <link rel="import" href="bar/test.html">
         <link rel="import" href="packages/a/foo/test.html">
         <link rel="import" href="packages/b/test.html">
         <script type="application/dart" src="test.dart"></script>''',
-    'a|web/test.dart': 'library a.test;',
-    'a|web/test2.html': '<script type="application/dart">main1() { }',
-    'a|web/bar/test.html': '<script type="application/dart">main2() { }',
-    'a|lib/foo/test.html': '<script type="application/dart">main3() { }',
-    'b|lib/test.html': '<script type="application/dart">main4() { }',
-  }, {
-    'a|web/test.html': '''
+        'a|web/test.dart': 'library a.test;',
+        'a|web/test2.html': '<script type="application/dart">main1() { }',
+        'a|web/bar/test.html': '<script type="application/dart">main2() { }',
+        'a|lib/foo/test.html': '<script type="application/dart">main3() { }',
+        'b|lib/test.html': '<script type="application/dart">main4() { }',
+      },
+      {
+        'a|web/test.html': '''
         <html>
           <head>
             <link rel="import" href="test2.html">
@@ -374,7 +468,7 @@
             <link rel="import" href="packages/b/test.html">
             <script type="application/dart" src="test.bootstrap.dart"></script>
           </head><body></body></html>''',
-    'a|web/test.bootstrap.dart': '''
+        'a|web/test.bootstrap.dart': '''
         library a.web.test_bootstrap_dart;
         import 'test.html.0.dart' as i0;
         import 'test.html.1.dart' as i1;
@@ -384,30 +478,35 @@
 
         main() => i4.main();
         ''',
-    'a|web/test.html.0.dart': '''
+        'a|web/test.html.0.dart': '''
         library a.web.test_html_0;
         main1() { }''',
-    'a|web/test.html.1.dart': '''
+        'a|web/test.html.1.dart': '''
         library a.web.test_html_1;
         main2() { }''',
-    'a|web/test.html.2.dart': '''
+        'a|web/test.html.2.dart': '''
         library a.web.test_html_2;
         main3() { }''',
-    'a|web/test.html.3.dart': '''
+        'a|web/test.html.3.dart': '''
         library a.web.test_html_3;
         main4() { }''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 }
 
 dartUriTests() {
-  testPhases('from web folder', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'from web folder',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
           <link rel="import" href="test2/foo.html">
           <script type="application/dart" src="test.dart"></script>
         </head><body></body></html>''',
-    'a|web/test.dart': 'library a.test;',
-    'a|web/test2/foo.html': '''
+        'a|web/test.dart': 'library a.test;',
+        'a|web/test2/foo.html': '''
       <!DOCTYPE html><html><head></head><body>
       <script type="application/dart">
         import 'package:qux/qux.dart';
@@ -416,41 +515,47 @@
         part 'baz.dart';
       </script>
       </body></html>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
           <link rel="import" href="test2/foo.html">
           <script type="application/dart" src="test.bootstrap.dart"></script>
         </head><body></body></html>''',
-    'a|web/test.html.0.dart': '''
+        'a|web/test.html.0.dart': '''
         library a.web.test_html_0;
 
         import 'package:qux/qux.dart';
         import 'test2/foo.dart';
         export 'test2/bar.dart';
         part 'test2/baz.dart';''',
-    'a|web/test2/foo.html': '''
+        'a|web/test2/foo.html': '''
         <!DOCTYPE html><html><head></head><body>
           <script type="application/dart" src="foo.bootstrap.dart">
           </script>
         </body></html>''',
-    'a|web/test2/foo.html.0.dart': '''
+        'a|web/test2/foo.html.0.dart': '''
         library a.web.test2.foo_html_0;
 
         import 'package:qux/qux.dart';
         import 'foo.dart';
         export 'bar.dart';
         part 'baz.dart';''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('from lib folder', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'from lib folder',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
         <link rel="import" href="packages/a/test2/foo.html">
         <script type="application/dart" src="test.dart"></script>
         </head><body></body></html>''',
-    'a|web/test.dart': 'library a.test;',
-    'a|lib/test2/foo.html': '''
+        'a|web/test.dart': 'library a.test;',
+        'a|lib/test2/foo.html': '''
         <!DOCTYPE html><html><head></head><body>
         <script type="application/dart">
           import 'package:qux/qux.dart';
@@ -459,20 +564,21 @@
           part 'baz.dart';
         </script>
         </body></html>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
           <link rel="import" href="packages/a/test2/foo.html">
           <script type="application/dart" src="test.bootstrap.dart"></script>
         </head><body></body></html>''',
-    'a|web/test.html.0.dart': '''
+        'a|web/test.html.0.dart': '''
         library a.web.test_html_0;
 
         import 'package:qux/qux.dart';
         import 'package:a/test2/foo.dart';
         export 'package:a/test2/bar.dart';
         part 'package:a/test2/baz.dart';''',
-    'a|lib/test2/foo.html': '''
+        'a|lib/test2/foo.html': '''
         <!DOCTYPE html><html><head></head><body>
         <script type="application/dart">
           import 'package:qux/qux.dart';
@@ -481,16 +587,21 @@
           part 'baz.dart';
         </script>
         </body></html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('from another pkg', phases, {
-    'a|web/test.html': '''
+  testPhases(
+      'from another pkg',
+      phases,
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
           <link rel="import" href="packages/b/test2/foo.html">
           <script type="application/dart" src="test.dart"></script>
         </head><body></body></html>''',
-    'a|web/test.dart': 'library a.test;',
-    'b|lib/test2/foo.html': '''
+        'a|web/test.dart': 'library a.test;',
+        'b|lib/test2/foo.html': '''
       <!DOCTYPE html><html><head></head><body>
       <script type="application/dart">
       import 'package:qux/qux.dart';
@@ -499,20 +610,23 @@
       part 'baz.dart';
       </script>
       </body></html>''',
-  }, {
-    'a|web/test.html': '''
+      },
+      {
+        'a|web/test.html': '''
         <!DOCTYPE html><html><head>
           <link rel="import" href="packages/b/test2/foo.html">
           <script type="application/dart" src="test.bootstrap.dart"></script>
         </head><body></body></html>''',
-    'a|web/test.html.0.dart': '''
+        'a|web/test.html.0.dart': '''
         library a.web.test_html_0;
 
         import 'package:qux/qux.dart';
         import 'package:b/test2/foo.dart';
         export 'package:b/test2/bar.dart';
         part 'package:b/test2/baz.dart';''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 }
 
 validateUriTests() {
diff --git a/test/build/test_compatibility_test.dart b/test/build/test_compatibility_test.dart
index f27071a..37f2012 100644
--- a/test/build/test_compatibility_test.dart
+++ b/test/build/test_compatibility_test.dart
@@ -12,8 +12,13 @@
 var end = new RewriteScriptToXDartTest(null);
 
 main() {
-  testPhases('can rewrite x-dart-test link tags to script tags', [[start]], {
-    'a|test/index.html': '''
+  testPhases(
+      'can rewrite x-dart-test link tags to script tags',
+      [
+        [start]
+      ],
+      {
+        'a|test/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -21,8 +26,9 @@
           </head>
           <body></body>
         </html>''',
-  }, {
-    'a|test/index.html': '''
+      },
+      {
+        'a|test/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -31,10 +37,17 @@
           </head>
           <body></body>
         </html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('can rewrite script tags to x-dart-test link tags', [[end]], {
-    'a|test/index.html': '''
+  testPhases(
+      'can rewrite script tags to x-dart-test link tags',
+      [
+        [end]
+      ],
+      {
+        'a|test/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -43,8 +56,9 @@
           </head>
           <body></body>
         </html>''',
-  }, {
-    'a|test/index.html': '''
+      },
+      {
+        'a|test/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -52,10 +66,18 @@
           </head>
           <body></body>
         </html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('restores original application at the end', [[start], [end]], {
-    'a|test/index.html': '''
+  testPhases(
+      'restores original application at the end',
+      [
+        [start],
+        [end]
+      ],
+      {
+        'a|test/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -63,8 +85,9 @@
           </head>
           <body></body>
         </html>''',
-  }, {
-    'a|test/index.html': '''
+      },
+      {
+        'a|test/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -72,5 +95,7 @@
           </head>
           <body></body>
         </html>''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 }
diff --git a/test/build/transformer_test.dart b/test/build/transformer_test.dart
index 9542ca8..0e05cf8 100644
--- a/test/build/transformer_test.dart
+++ b/test/build/transformer_test.dart
@@ -11,11 +11,16 @@
 
 var transformer = new WebComponentsTransformerGroup(
     new TransformOptions(['web/index.html', 'test/index.html'], false));
-var phases = [[transformer]];
+var phases = [
+  [transformer]
+];
 
 main() {
-  testPhases('full app', phases, {
-    'a|web/index.html': '''
+  testPhases(
+      'full app',
+      phases,
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -26,7 +31,7 @@
           </body>
         </html>
         ''',
-    'a|web/index.dart': '''
+        'a|web/index.dart': '''
         library a;
 
         import 'package:initialize/initialize.dart';
@@ -34,15 +39,15 @@
         @initMethod
         startup() {}
         ''',
-    'b|lib/foo.html': '''
+        'b|lib/foo.html': '''
         <link rel="import" href="bar.html">
         <script type="application/dart" src="foo.dart"></script>
         <div>foo</div>
         ''',
-    'b|lib/foo.dart': '''
+        'b|lib/foo.dart': '''
         library b.foo;
         ''',
-    'b|lib/bar.html': '''
+        'b|lib/bar.html': '''
         <script type="application/dart">
           // Must use package:urls inside inline script tags,
           @HtmlImport('package:b/bar_nodart.html')
@@ -57,13 +62,15 @@
         </script>
         <div>bar</div>
         ''',
-    'b|lib/bar_nodart.html': '''
+        'b|lib/bar_nodart.html': '''
         <div>bar no_dart!</div>
         ''',
-    'initialize|lib/initialize.dart': mockInitialize,
-    'web_components|lib/html_import_annotation.dart': mockHtmlImportAnnotation,
-  }, {
-    'a|web/index.html': '''
+        'initialize|lib/initialize.dart': mockInitialize,
+        'web_components|lib/html_import_annotation.dart':
+            mockHtmlImportAnnotation,
+      },
+      {
+        'a|web/index.html': '''
         <!DOCTYPE html>
         <html>
           <head></head>
@@ -78,7 +85,7 @@
           </body>
         </html>
         ''',
-    'a|web/index.bootstrap.initialize.dart': '''
+        'a|web/index.bootstrap.initialize.dart': '''
         import 'package:initialize/src/static_loader.dart';
         import 'package:initialize/initialize.dart';
         import 'index.bootstrap.dart' as i0;
@@ -95,7 +102,7 @@
           return i0.main();
         }
         ''',
-    'a|web/index.bootstrap.dart': '''
+        'a|web/index.bootstrap.dart': '''
         library a.web.index_bootstrap_dart;
 
         import 'index.html.0.dart' as i0;
@@ -104,7 +111,7 @@
 
         main() => i2.main();
         ''',
-    'a|web/index.html.0.dart': '''
+        'a|web/index.html.0.dart': '''
         // Must use package:urls inside inline script tags,
         @HtmlImport('package:b/bar_nodart.html')
         library b.bar;
@@ -116,10 +123,15 @@
         @initMethod
         bar() {}
         ''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('imports go above the dart script', phases, {
-    'b|web/index.html': '''
+  testPhases(
+      'imports go above the dart script',
+      phases,
+      {
+        'b|web/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -131,29 +143,31 @@
           </body>
         </html>
         ''',
-    'b|web/index.dart': '''
+        'b|web/index.dart': '''
         @HtmlImport('package:b/b.html')
         library b;
 
         import 'package:web_components/html_import_annotation.dart';
         import 'package:c/c.dart';
         ''',
-    'b|lib/b.html': '''
+        'b|lib/b.html': '''
         <div>b</div>
         ''',
-    'c|lib/c.dart': '''
+        'c|lib/c.dart': '''
         @HtmlImport('c.html')
         library c;
 
         import 'package:web_components/html_import_annotation.dart';
         ''',
-    'c|lib/c.html': '''
+        'c|lib/c.html': '''
         <div>c</div>
         ''',
-    'initialize|lib/initialize.dart': mockInitialize,
-    'web_components|lib/html_import_annotation.dart': mockHtmlImportAnnotation,
-  }, {
-    'b|web/index.html': '''
+        'initialize|lib/initialize.dart': mockInitialize,
+        'web_components|lib/html_import_annotation.dart':
+            mockHtmlImportAnnotation,
+      },
+      {
+        'b|web/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -170,10 +184,15 @@
           </body>
         </html>
         ''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 
-  testPhases('test compatibility', phases, {
-    'a|test/index.html': '''
+  testPhases(
+      'test compatibility',
+      phases,
+      {
+        'a|test/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -183,15 +202,17 @@
           <body></body>
         </html>
         ''',
-    'a|test/index.dart': '''
+        'a|test/index.dart': '''
         library a;
 
         main() {}
         ''',
-    'initialize|lib/initialize.dart': mockInitialize,
-    'web_components|lib/html_import_annotation.dart': mockHtmlImportAnnotation,
-  }, {
-    'a|test/index.html': '''
+        'initialize|lib/initialize.dart': mockInitialize,
+        'web_components|lib/html_import_annotation.dart':
+            mockHtmlImportAnnotation,
+      },
+      {
+        'a|test/index.html': '''
         <!DOCTYPE html>
         <html>
           <head>
@@ -201,5 +222,7 @@
           <body></body>
         </html>
         ''',
-  }, messages: [], formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
+      },
+      messages: [],
+      formatter: StringFormatter.noNewlinesOrSurroundingWhitespace);
 }
diff --git a/test/init_web_components_test.dart b/test/init_web_components_test.dart
index cd418e2..4633963 100644
--- a/test/init_web_components_test.dart
+++ b/test/init_web_components_test.dart
@@ -19,9 +19,12 @@
         const LibraryIdentifier(
             #web_components.test.deps.b, null, 'deps/b.dart'),
         // This one changes based on deploy mode because its an inline script.
-        const LibraryIdentifier(#web_components.test.deps.c, null, deployMode
-            ? 'init_web_components_test.html.0.dart'
-            : 'deps/c.html'),
+        const LibraryIdentifier(
+            #web_components.test.deps.c,
+            null,
+            deployMode
+                ? 'init_web_components_test.html.0.dart'
+                : 'deps/c.html'),
         const LibraryIdentifier(
             #web_components.test.deps.a, null, 'deps/a.dart'),
         const LibraryIdentifier(#web_components.test.init_web_components_test,
diff --git a/test/interop_test.dart b/test/interop_test.dart
index 30bde10..0155eda 100644
--- a/test/interop_test.dart
+++ b/test/interop_test.dart
@@ -129,6 +129,7 @@
     expect(e.y, 9);
   }, skip: 'https://github.com/dart-lang/web-components/issues/38');
 }
+
 int _count = 0;
 
 abstract class Wrapper {