reformatted, remove unused fields and imports, updated readme

and fixed codereview.settings

R=nweiz@google.com

Review URL: https://codereview.chromium.org//831093005
diff --git a/README.md b/README.md
index 2e3eec1..5a172cd 100644
--- a/README.md
+++ b/README.md
@@ -14,13 +14,17 @@
 The path library was designed to be imported with a prefix, though you don't
 have to if you don't want to:
 
-    import 'package:path/path.dart' as path;
+```dart
+import 'package:path/path.dart' as path;
+```
 
 The most common way to use the library is through the top-level functions.
 These manipulate path strings based on your current working directory and
 the path style (POSIX, Windows, or URLs) of the host platform. For example:
 
-    path.join("directory", "file.txt");
+```dart
+path.join("directory", "file.txt");
+```
 
 This calls the top-level [join] function to join "directory" and
 "file.txt" using the current platform's directory separator.
@@ -29,8 +33,10 @@
 underlying platform that the program is running on, you can create a
 [Context] and give it an explicit [Style]:
 
-    var context = new path.Context(style: Style.windows);
-    context.join("directory", "file.txt");
+```dart
+var context = new path.Context(style: Style.windows);
+context.join("directory", "file.txt");
+```
 
 This will join "directory" and "file.txt" using the Windows path separator,
 even when the program is run on a POSIX machine.
diff --git a/benchmark/benchmark.dart b/benchmark/benchmark.dart
index 60a2b53..419eee0 100644
--- a/benchmark/benchmark.dart
+++ b/benchmark/benchmark.dart
@@ -48,11 +48,7 @@
   }
 }
 
-const COMMON_PATHS = const [
-  '.',
-  '..',
-  'out/ReleaseIA32/packages',
-];
+const COMMON_PATHS = const ['.', '..', 'out/ReleaseIA32/packages'];
 
 final STYLE_PATHS = {
   path.Style.posix: [
diff --git a/codereview.settings b/codereview.settings
index eef3955..1ff4094 100644
--- a/codereview.settings
+++ b/codereview.settings
@@ -1,3 +1,3 @@
-CODE_REVIEW_SERVER: http://codereview.chromium.org/
+CODE_REVIEW_SERVER: https://codereview.chromium.org/
 VIEW_VC: https://github.com/dart-lang/path/commit/
 CC_LIST: reviews@dartlang.org
\ No newline at end of file
diff --git a/lib/path.dart b/lib/path.dart
index be6e95a..cfbaf11 100644
--- a/lib/path.dart
+++ b/lib/path.dart
@@ -99,8 +99,8 @@
 ///
 ///     path.absolute('path', 'to/foo'); // -> '/your/current/dir/path/to/foo'
 String absolute(String part1, [String part2, String part3, String part4,
-            String part5, String part6, String part7]) =>
-  context.absolute(part1, part2, part3, part4, part5, part6, part7);
+    String part5, String part6, String part7]) =>
+        context.absolute(part1, part2, part3, part4, part5, part6, part7);
 
 /// Gets the part of [path] after the last separator.
 ///
@@ -221,8 +221,8 @@
 ///
 ///     path.join('path', '/to', 'foo'); // -> '/to/foo'
 String join(String part1, [String part2, String part3, String part4,
-            String part5, String part6, String part7, String part8]) =>
-  context.join(part1, part2, part3, part4, part5, part6, part7, part8);
+    String part5, String part6, String part7, String part8]) =>
+        context.join(part1, part2, part3, part4, part5, part6, part7, part8);
 
 /// Joins the given path parts into a single path using the current platform's
 /// [separator]. Example:
diff --git a/lib/src/context.dart b/lib/src/context.dart
index e9237a2..a3efd95 100644
--- a/lib/src/context.dart
+++ b/lib/src/context.dart
@@ -44,7 +44,9 @@
   }
 
   /// Create a [Context] to be used internally within path.
-  Context._internal() : style = Style.platform, _current = null;
+  Context._internal()
+      : style = Style.platform,
+        _current = null;
 
   Context._(this.style, this._current);
 
@@ -70,7 +72,7 @@
   ///
   /// If [current] isn't absolute, this won't return an absolute path.
   String absolute(String part1, [String part2, String part3, String part4,
-              String part5, String part6, String part7]) {
+      String part5, String part6, String part7]) {
     return join(current, part1, part2, part3, part4, part5, part6, part7);
   }
 
@@ -94,7 +96,7 @@
   ///
   ///     context.basenameWithoutExtension('path/to/foo.dart/'); // -> 'foo'
   String basenameWithoutExtension(String path) =>
-    _parse(path).basenameWithoutExtension;
+      _parse(path).basenameWithoutExtension;
 
   /// Gets the part of [path] before the last separator.
   ///
@@ -194,7 +196,7 @@
   ///     context.join('path', '/to', 'foo'); // -> '/to/foo'
   ///
   String join(String part1, [String part2, String part3, String part4,
-              String part5, String part6, String part7, String part8]) {
+      String part5, String part6, String part7, String part8]) {
     var parts = [part1, part2, part3, part4, part5, part6, part7, part8];
     _validateArgList("join", parts);
     return joinAll(parts.where((part) => part != null));
@@ -274,8 +276,7 @@
   List<String> split(String path) {
     var parsed = _parse(path);
     // Filter out empty parts that exist due to multiple separators in a row.
-    parsed.parts = parsed.parts.where((part) => !part.isEmpty)
-                               .toList();
+    parsed.parts = parsed.parts.where((part) => !part.isEmpty).toList();
     if (parsed.root != null) parsed.parts.insert(0, parsed.root);
     return parsed.parts;
   }
@@ -354,15 +355,16 @@
     // one. In Windows, drive letters are case-insenstive and we allow
     // calculation of relative paths, even if a path has not been normalized.
     if (fromParsed.root != pathParsed.root &&
-        ((fromParsed.root ==  null || pathParsed.root == null) ||
-          fromParsed.root.toLowerCase().replaceAll('/', '\\') !=
-          pathParsed.root.toLowerCase().replaceAll('/', '\\'))) {
+        ((fromParsed.root == null || pathParsed.root == null) ||
+            fromParsed.root.toLowerCase().replaceAll('/', '\\') !=
+                pathParsed.root.toLowerCase().replaceAll('/', '\\'))) {
       return pathParsed.toString();
     }
 
     // Strip off their common prefix.
-    while (fromParsed.parts.length > 0 && pathParsed.parts.length > 0 &&
-           fromParsed.parts[0] == pathParsed.parts[0]) {
+    while (fromParsed.parts.length > 0 &&
+        pathParsed.parts.length > 0 &&
+        fromParsed.parts[0] == pathParsed.parts[0]) {
       fromParsed.parts.removeAt(0);
       fromParsed.separators.removeAt(1);
       pathParsed.parts.removeAt(0);
@@ -375,11 +377,11 @@
     if (fromParsed.parts.length > 0 && fromParsed.parts[0] == '..') {
       throw new PathException('Unable to find a path to "$path" from "$from".');
     }
-    pathParsed.parts.insertAll(0,
-        new List.filled(fromParsed.parts.length, '..'));
+    pathParsed.parts.insertAll(
+        0, new List.filled(fromParsed.parts.length, '..'));
     pathParsed.separators[0] = '';
-    pathParsed.separators.insertAll(1,
-        new List.filled(fromParsed.parts.length, style.separator));
+    pathParsed.separators.insertAll(
+        1, new List.filled(fromParsed.parts.length, style.separator));
 
     // Corner case: the paths completely collapsed.
     if (pathParsed.parts.length == 0) return '.';
@@ -388,7 +390,10 @@
     // Don't add a final '/.' in that case.
     if (pathParsed.parts.length > 1 && pathParsed.parts.last == '.') {
       pathParsed.parts.removeLast();
-      pathParsed.separators..removeLast()..removeLast()..add('');
+      pathParsed.separators
+        ..removeLast()
+        ..removeLast()
+        ..add('');
     }
 
     // Make it relative.
@@ -415,7 +420,8 @@
     }
 
     var parts = this.split(relative);
-    return this.isRelative(relative) && parts.first != '..' &&
+    return this.isRelative(relative) &&
+        parts.first != '..' &&
         parts.first != '.';
   }
 
@@ -518,7 +524,6 @@
 
     var path = normalize(fromUri(uri));
     var rel = relative(path);
-    var components = split(rel);
 
     // Only return a relative path if it's actually shorter than the absolute
     // path. This avoids ugly things like long "../" chains to get to the root
@@ -544,7 +549,8 @@
     // Show the arguments.
     var message = new StringBuffer();
     message.write("$method(");
-    message.write(args.take(numArgs)
+    message.write(args
+        .take(numArgs)
         .map((arg) => arg == null ? "null" : '"$arg"')
         .join(", "));
     message.write("): part ${i - 1} was null, but part $i was not.");
diff --git a/lib/src/parsed_path.dart b/lib/src/parsed_path.dart
index a7b0afd..b853eb1 100644
--- a/lib/src/parsed_path.dart
+++ b/lib/src/parsed_path.dart
@@ -41,8 +41,6 @@
   bool get isAbsolute => root != null;
 
   factory ParsedPath.parse(String path, InternalStyle style) {
-    var before = path;
-
     // Remove the root prefix, if any.
     var root = style.getRoot(path);
     var isRootRelative = style.isRootRelative(path);
@@ -78,8 +76,8 @@
     return new ParsedPath._(style, root, isRootRelative, parts, separators);
   }
 
-  ParsedPath._(this.style, this.root, this.isRootRelative, this.parts,
-      this.separators);
+  ParsedPath._(
+      this.style, this.root, this.isRootRelative, this.parts, this.separators);
 
   String get basename {
     var copy = this.clone();
@@ -134,9 +132,9 @@
     // Canonicalize separators.
     var newSeparators = new List.generate(
         newParts.length, (_) => style.separator, growable: true);
-    newSeparators.insert(0,
-        isAbsolute && newParts.length > 0 && style.needsSeparator(root) ?
-            style.separator : '');
+    newSeparators.insert(0, isAbsolute &&
+        newParts.length > 0 &&
+        style.needsSeparator(root) ? style.separator : '');
 
     parts = newParts;
     separators = newSeparators;
@@ -180,8 +178,6 @@
     return [file.substring(0, lastDot), file.substring(lastDot)];
   }
 
-  ParsedPath clone() => new ParsedPath._(
-      style, root, isRootRelative,
+  ParsedPath clone() => new ParsedPath._(style, root, isRootRelative,
       new List.from(parts), new List.from(separators));
 }
-
diff --git a/lib/src/style/url.dart b/lib/src/style/url.dart
index d5d0fdb..255f22a 100644
--- a/lib/src/style/url.dart
+++ b/lib/src/style/url.dart
@@ -6,7 +6,6 @@
 
 import '../characters.dart' as chars;
 import '../internal_style.dart';
-import '../utils.dart';
 
 /// The style for URL paths.
 class UrlStyle extends InternalStyle {
@@ -19,8 +18,8 @@
   // Deprecated properties.
 
   final separatorPattern = new RegExp(r'/');
-  final needsSeparatorPattern = new RegExp(
-      r"(^[a-zA-Z][-+.a-zA-Z\d]*://|[^/])$");
+  final needsSeparatorPattern =
+      new RegExp(r"(^[a-zA-Z][-+.a-zA-Z\d]*://|[^/])$");
   final rootPattern = new RegExp(r"[a-zA-Z][-+.a-zA-Z\d]*://[^/]*");
   final relativeRootPattern = new RegExp(r"^/");
 
diff --git a/lib/src/style/windows.dart b/lib/src/style/windows.dart
index 16e14d5..f38efa5 100644
--- a/lib/src/style/windows.dart
+++ b/lib/src/style/windows.dart
@@ -38,7 +38,7 @@
     if (path.isEmpty) return 0;
     if (path.codeUnitAt(0) == chars.SLASH) return 1;
     if (path.codeUnitAt(0) == chars.BACKSLASH) {
-    if (path.length < 2 || path.codeUnitAt(1) != chars.BACKSLASH) return 1;
+      if (path.length < 2 || path.codeUnitAt(1) != chars.BACKSLASH) return 1;
       // The path is a network share. Search for up to two '\'s, as they are
       // the server and share - and part of the root part.
       var index = path.indexOf('\\', 2);
@@ -101,8 +101,8 @@
         parsed.parts.add("");
       }
 
-      return new Uri(scheme: 'file', host: rootParts.first,
-          pathSegments: parsed.parts);
+      return new Uri(
+          scheme: 'file', host: rootParts.first, pathSegments: parsed.parts);
     } else {
       // Drive-letter paths become "file:///C:/path/to/file".
 
@@ -116,8 +116,8 @@
 
       // Get rid of the trailing "\" in "C:\" because the URI constructor will
       // add a separator on its own.
-      parsed.parts.insert(0,
-          parsed.root.replaceAll("/", "").replaceAll("\\", ""));
+      parsed.parts.insert(
+          0, parsed.root.replaceAll("/", "").replaceAll("\\", ""));
 
       return new Uri(scheme: 'file', pathSegments: parsed.parts);
     }
diff --git a/lib/src/utils.dart b/lib/src/utils.dart
index 0636261..e320749 100644
--- a/lib/src/utils.dart
+++ b/lib/src/utils.dart
@@ -10,7 +10,7 @@
 /// lowercase).
 bool isAlphabetic(int char) =>
     (char >= chars.UPPER_A && char <= chars.UPPER_Z) ||
-    (char >= chars.LOWER_A && char <= chars.LOWER_Z);
+        (char >= chars.LOWER_A && char <= chars.LOWER_Z);
 
 /// Returns whether [char] is the code for an ASCII digit.
 bool isNumeric(int char) => char >= chars.ZERO && char <= chars.NINE;
diff --git a/test/browser_test.dart b/test/browser_test.dart
index d8584a4..0b56c7a 100644
--- a/test/browser_test.dart
+++ b/test/browser_test.dart
@@ -15,7 +15,7 @@
     test('uses the window location if root and style are omitted', () {
       var context = new path.Context();
       expect(context.current,
-             Uri.parse(window.location.href).resolve('.').toString());
+          Uri.parse(window.location.href).resolve('.').toString());
     });
 
     test('uses "." if root is omitted', () {
@@ -34,7 +34,7 @@
   });
 
   test('current', () {
-    expect(path.current,
-           Uri.parse(window.location.href).resolve('.').toString());
+    expect(
+        path.current, Uri.parse(window.location.href).resolve('.').toString());
   });
 }
diff --git a/test/io_test.dart b/test/io_test.dart
index 5663920..e855522 100644
--- a/test/io_test.dart
+++ b/test/io_test.dart
@@ -41,8 +41,8 @@
     var dir = io.Directory.current.path;
     try {
       expect(path.absolute('foo/bar'), equals(path.join(dir, 'foo/bar')));
-      expect(path.absolute('foo/bar'),
-          equals(path.context.join(dir, 'foo/bar')));
+      expect(
+          path.absolute('foo/bar'), equals(path.context.join(dir, 'foo/bar')));
 
       io.Directory.current = path.dirname(dir);
       expect(path.normalize(path.absolute('foo/bar')),
diff --git a/test/posix_test.dart b/test/posix_test.dart
index e6aaba4..25e3419 100644
--- a/test/posix_test.dart
+++ b/test/posix_test.dart
@@ -10,8 +10,8 @@
 import 'utils.dart';
 
 main() {
-  var context = new path.Context(
-      style: path.Style.posix, current: '/root/path');
+  var context =
+      new path.Context(style: path.Style.posix, current: '/root/path');
 
   test('separator', () {
     expect(context.separator, '/');
@@ -184,7 +184,7 @@
     test('join does not modify internal ., .., or trailing separators', () {
       expect(context.join('a/', 'b/c/'), 'a/b/c/');
       expect(context.join('a/b/./c/..//', 'd/.././..//e/f//'),
-             'a/b/./c/..//d/.././..//e/f//');
+          'a/b/./c/..//d/.././..//e/f//');
       expect(context.join('a/b', 'c/../../../..'), 'a/b/c/../../../..');
       expect(context.join('a', 'b${context.separator}'), 'a/b/');
     });
@@ -245,7 +245,7 @@
       expect(context.normalize(r'C:\'), r'C:\');
       expect(context.normalize(r'\\'), r'\\');
       expect(context.normalize('a/./\xc5\u0bf8-;\u{1f085}\u{00}/c/d/../'),
-             'a/\xc5\u0bf8-;\u{1f085}\u{00}/c');
+          'a/\xc5\u0bf8-;\u{1f085}\u{00}/c');
     });
 
     test('collapses redundant separators', () {
@@ -392,12 +392,12 @@
     });
 
     test('with a root parameter and a relative root', () {
-      var r = new path.Context(
-          style: path.Style.posix, current: 'relative/root');
+      var r =
+          new path.Context(style: path.Style.posix, current: 'relative/root');
       expect(r.relative('/foo/bar/baz', from: '/foo/bar'), equals('baz'));
       expect(() => r.relative('..', from: '/foo/bar'), throwsPathException);
-      expect(r.relative('/foo/bar/baz', from: 'foo/bar'),
-          equals('/foo/bar/baz'));
+      expect(
+          r.relative('/foo/bar/baz', from: 'foo/bar'), equals('/foo/bar/baz'));
       expect(r.relative('..', from: 'foo/bar'), equals('../../..'));
     });
 
@@ -449,8 +449,8 @@
 
     test('ignores parts before an absolute path', () {
       expect(context.absolute('a', '/b', '/c', 'd'), '/c/d');
-      expect(context.absolute('a', r'c:\b', 'c', 'd'),
-          r'/root/path/a/c:\b/c/d');
+      expect(
+          context.absolute('a', r'c:\b', 'c', 'd'), r'/root/path/a/c:\b/c/d');
       expect(context.absolute('a', r'\\b', 'c', 'd'), r'/root/path/a/\\b/c/d');
     });
   });
@@ -477,8 +477,8 @@
   group('fromUri', () {
     test('with a URI', () {
       expect(context.fromUri(Uri.parse('file:///path/to/foo')), '/path/to/foo');
-      expect(context.fromUri(Uri.parse('file:///path/to/foo/')),
-          '/path/to/foo/');
+      expect(
+          context.fromUri(Uri.parse('file:///path/to/foo/')), '/path/to/foo/');
       expect(context.fromUri(Uri.parse('file:///')), '/');
       expect(context.fromUri(Uri.parse('foo/bar')), 'foo/bar');
       expect(context.fromUri(Uri.parse('/path/to/foo')), '/path/to/foo');
diff --git a/test/relative_test.dart b/test/relative_test.dart
index 58163d2..4523c8d 100644
--- a/test/relative_test.dart
+++ b/test/relative_test.dart
@@ -13,16 +13,16 @@
   test("test relative", () {
     relativeTest(new path.Context(style: path.Style.posix, current: '.'), '/');
     relativeTest(new path.Context(style: path.Style.posix, current: '/'), '/');
-    relativeTest(new path.Context(style: path.Style.windows, current: r'd:\'),
-                 r'c:\');
-    relativeTest(new path.Context(style: path.Style.windows, current: '.'),
-                 r'c:\');
+    relativeTest(
+        new path.Context(style: path.Style.windows, current: r'd:\'), r'c:\');
+    relativeTest(
+        new path.Context(style: path.Style.windows, current: '.'), r'c:\');
     relativeTest(new path.Context(style: path.Style.url, current: 'file:///'),
-                 'http://myserver/');
+        'http://myserver/');
     relativeTest(new path.Context(style: path.Style.url, current: '.'),
-                 'http://myserver/');
-    relativeTest(new path.Context(style: path.Style.url, current: 'file:///'),
-                 '/');
+        'http://myserver/');
+    relativeTest(
+        new path.Context(style: path.Style.url, current: 'file:///'), '/');
     relativeTest(new path.Context(style: path.Style.url, current: '.'), '/');
   });
 }
@@ -78,10 +78,9 @@
   // Should always throw - no relative path can be constructed.
   if (isRelative) {
     expect(() => context.relative('.', from: '..'), throwsPathException);
-    expect(() => context.relative('a/b', from: '../../d'),
-           throwsPathException);
+    expect(() => context.relative('a/b', from: '../../d'), throwsPathException);
     expect(() => context.relative('a/b', from: '${prefix}a/b'),
-           throwsPathException);
+        throwsPathException);
     // An absolute path relative from a relative path returns the absolute path.
     expectRelative('${prefix}a/b', '${prefix}a/b', 'c/d');
   }
diff --git a/test/url_test.dart b/test/url_test.dart
index 3f7e6fe..aca161b 100644
--- a/test/url_test.dart
+++ b/test/url_test.dart
@@ -6,8 +6,8 @@
 import 'package:path/path.dart' as path;
 
 main() {
-  var context = new path.Context(style: path.Style.url,
-      current: 'http://dartlang.org/root/path');
+  var context = new path.Context(
+      style: path.Style.url, current: 'http://dartlang.org/root/path');
 
   test('separator', () {
     expect(context.separator, '/');
@@ -28,8 +28,8 @@
     expect(context.rootPrefix(''), '');
     expect(context.rootPrefix('a'), '');
     expect(context.rootPrefix('a/b'), '');
-    expect(context.rootPrefix('http://dartlang.org/a/c'),
-        'http://dartlang.org');
+    expect(
+        context.rootPrefix('http://dartlang.org/a/c'), 'http://dartlang.org');
     expect(context.rootPrefix('file:///a/c'), 'file://');
     expect(context.rootPrefix('/a/c'), '/');
     expect(context.rootPrefix('http://dartlang.org/'), 'http://dartlang.org');
@@ -246,7 +246,7 @@
     test('Join does not modify internal ., .., or trailing separators', () {
       expect(context.join('a/', 'b/c/'), 'a/b/c/');
       expect(context.join('a/b/./c/..//', 'd/.././..//e/f//'),
-             'a/b/./c/..//d/.././..//e/f//');
+          'a/b/./c/..//d/.././..//e/f//');
       expect(context.join('a/b', 'c/../../../..'), 'a/b/c/../../../..');
       expect(context.join('a', 'b${context.separator}'), 'a/b/');
     });
@@ -265,9 +265,12 @@
       expect(context.joinAll(['a', '/', 'b', 'c']), '/b/c');
       expect(context.joinAll(['a', '/b', 'http://dartlang.org/c', 'd']),
           'http://dartlang.org/c/d');
-      expect(context.joinAll(
-              ['a', 'http://google.com/b', 'http://dartlang.org/c', 'd']),
-          'http://dartlang.org/c/d');
+      expect(context.joinAll([
+        'a',
+        'http://google.com/b',
+        'http://dartlang.org/c',
+        'd'
+      ]), 'http://dartlang.org/c/d');
       expect(context.joinAll(['a', '/b', '/c', 'd']), '/c/d');
       expect(context.joinAll(['a', r'c:\b', 'c', 'd']), r'a/c:\b/c/d');
       expect(context.joinAll(['a', r'\\b', 'c', 'd']), r'a/\\b/c/d');
@@ -334,7 +337,7 @@
       expect(context.normalize(r'C:\'), r'C:\');
       expect(context.normalize(r'\\'), r'\\');
       expect(context.normalize('a/./\xc5\u0bf8-;\u{1f085}\u{00}/c/d/../'),
-             'a/\xc5\u0bf8-;\u{1f085}\u{00}/c');
+          'a/\xc5\u0bf8-;\u{1f085}\u{00}/c');
     });
 
     test('collapses redundant separators', () {
@@ -351,8 +354,8 @@
       expect(context.normalize('http://dartlang.org/.'), 'http://dartlang.org');
       expect(context.normalize('file:///.'), 'file://');
       expect(context.normalize('/.'), '/');
-      expect(context.normalize('http://dartlang.org/./'),
-          'http://dartlang.org');
+      expect(
+          context.normalize('http://dartlang.org/./'), 'http://dartlang.org');
       expect(context.normalize('file:///./'), 'file://');
       expect(context.normalize('/./'), '/');
       expect(context.normalize('./.'), '.');
@@ -368,8 +371,8 @@
       expect(context.normalize('../'), '..');
       expect(context.normalize('../../..'), '../../..');
       expect(context.normalize('../../../'), '../../..');
-      expect(context.normalize('http://dartlang.org/..'),
-          'http://dartlang.org');
+      expect(
+          context.normalize('http://dartlang.org/..'), 'http://dartlang.org');
       expect(context.normalize('file:///..'), 'file://');
       expect(context.normalize('/..'), '/');
       expect(context.normalize('http://dartlang.org/../../..'),
@@ -395,10 +398,10 @@
     test('does not walk before root on absolute paths', () {
       expect(context.normalize('..'), '..');
       expect(context.normalize('../'), '..');
-      expect(context.normalize('http://dartlang.org/..'),
-          'http://dartlang.org');
+      expect(
+          context.normalize('http://dartlang.org/..'), 'http://dartlang.org');
       expect(context.normalize('http://dartlang.org/../a'),
-             'http://dartlang.org/a');
+          'http://dartlang.org/a');
       expect(context.normalize('file:///..'), 'file://');
       expect(context.normalize('file:///../a'), 'file:///a');
       expect(context.normalize('/..'), '/');
@@ -441,8 +444,8 @@
         expect(context.relative('http://dartlang.org/root/path/a/b.txt'),
             'a/b.txt');
         expect(context.relative('/root/path/a/b.txt'), 'a/b.txt');
-        expect(context.relative('http://dartlang.org/root/a/b.txt'),
-            '../a/b.txt');
+        expect(
+            context.relative('http://dartlang.org/root/a/b.txt'), '../a/b.txt');
         expect(context.relative('/root/a/b.txt'), '../a/b.txt');
       });
 
@@ -455,15 +458,14 @@
             'a/b.txt');
         expect(context.relative('http://dartlang.org/root/path/a/b.txt'),
             'a/b.txt');
-        expect(context.relative('http://dartlang.org/root/a/b.txt'),
-            '../a/b.txt');
+        expect(
+            context.relative('http://dartlang.org/root/a/b.txt'), '../a/b.txt');
       });
 
       test('given absolute path with different hostname/protocol', () {
         expect(context.relative(r'http://google.com/a/b'),
             r'http://google.com/a/b');
-        expect(context.relative(r'file:///a/b'),
-            r'file:///a/b');
+        expect(context.relative(r'file:///a/b'), r'file:///a/b');
       });
 
       test('given relative path', () {
@@ -480,11 +482,9 @@
       // Regression
       test('from root-only path', () {
         expect(context.relative('http://dartlang.org',
-                from: 'http://dartlang.org'),
-            '.');
+            from: 'http://dartlang.org'), '.');
         expect(context.relative('http://dartlang.org/root/path',
-                from: 'http://dartlang.org'),
-            'root/path');
+            from: 'http://dartlang.org'), 'root/path');
       });
     });
 
@@ -552,15 +552,12 @@
           context.relative('http://dartlang.org/foo/bar/baz', from: '/foo/bar'),
           equals('baz'));
       expect(context.relative('http://dartlang.org/foo/bar/baz',
-              from: 'file:///foo/bar'),
-          equals('http://dartlang.org/foo/bar/baz'));
+          from: 'file:///foo/bar'), equals('http://dartlang.org/foo/bar/baz'));
       expect(context.relative('http://dartlang.org/foo/bar/baz',
           from: 'http://dartlang.org/foo/bar'), equals('baz'));
-      expect(
-          context.relative('/foo/bar/baz', from: 'file:///foo/bar'),
+      expect(context.relative('/foo/bar/baz', from: 'file:///foo/bar'),
           equals('http://dartlang.org/foo/bar/baz'));
-      expect(
-          context.relative('file:///foo/bar/baz', from: '/foo/bar'),
+      expect(context.relative('file:///foo/bar/baz', from: '/foo/bar'),
           equals('file:///foo/bar/baz'));
 
       expect(context.relative('..', from: '/foo/bar'), equals('../../root'));
@@ -570,8 +567,8 @@
           equals('http://dartlang.org/root'));
       expect(context.relative('..', from: '/foo/bar'), equals('../../root'));
 
-      expect(context.relative('http://dartlang.org/foo/bar/baz',
-              from: 'foo/bar'),
+      expect(
+          context.relative('http://dartlang.org/foo/bar/baz', from: 'foo/bar'),
           equals('../../../../foo/bar/baz'));
       expect(context.relative('file:///foo/bar/baz', from: 'foo/bar'),
           equals('file:///foo/bar/baz'));
@@ -584,15 +581,12 @@
     test('with a root parameter and a relative root', () {
       var r = new path.Context(style: path.Style.url, current: 'relative/root');
       expect(r.relative('/foo/bar/baz', from: '/foo/bar'), equals('baz'));
-      expect(
-          r.relative('/foo/bar/baz', from: 'http://dartlang.org/foo/bar'),
+      expect(r.relative('/foo/bar/baz', from: 'http://dartlang.org/foo/bar'),
           equals('/foo/bar/baz'));
-      expect(
-          r.relative('http://dartlang.org/foo/bar/baz', from: '/foo/bar'),
+      expect(r.relative('http://dartlang.org/foo/bar/baz', from: '/foo/bar'),
           equals('http://dartlang.org/foo/bar/baz'));
       expect(r.relative('http://dartlang.org/foo/bar/baz',
-              from: 'file:///foo/bar'),
-          equals('http://dartlang.org/foo/bar/baz'));
+          from: 'file:///foo/bar'), equals('http://dartlang.org/foo/bar/baz'));
       expect(r.relative('http://dartlang.org/foo/bar/baz',
           from: 'http://dartlang.org/foo/bar'), equals('baz'));
 
@@ -600,8 +594,8 @@
           equals('http://dartlang.org/foo/bar/baz'));
       expect(r.relative('file:///foo/bar/baz', from: 'foo/bar'),
           equals('file:///foo/bar/baz'));
-      expect(r.relative('/foo/bar/baz', from: 'foo/bar'),
-          equals('/foo/bar/baz'));
+      expect(
+          r.relative('/foo/bar/baz', from: 'foo/bar'), equals('/foo/bar/baz'));
 
       expect(r.relative('..', from: 'foo/bar'), equals('../../..'));
     });
@@ -623,11 +617,9 @@
       expect(context.isWithin('foo/bar', 'foo/baz'), isFalse);
       expect(context.isWithin('foo/bar', '../path/foo/bar/baz'), isTrue);
       expect(context.isWithin(
-              'http://dartlang.org', 'http://dartlang.org/foo/bar'),
-          isTrue);
+          'http://dartlang.org', 'http://dartlang.org/foo/bar'), isTrue);
       expect(context.isWithin(
-              'http://dartlang.org', 'http://pub.dartlang.org/foo/bar'),
-          isFalse);
+          'http://dartlang.org', 'http://pub.dartlang.org/foo/bar'), isFalse);
       expect(context.isWithin('http://dartlang.org', '/foo/bar'), isTrue);
       expect(context.isWithin('http://dartlang.org/foo', '/foo/bar'), isTrue);
       expect(context.isWithin('http://dartlang.org/foo', '/bar/baz'), isFalse);
@@ -642,8 +634,8 @@
       expect(r.isWithin('.', 'a/b/c'), isTrue);
       expect(r.isWithin('.', '../a/b/c'), isFalse);
       expect(r.isWithin('.', '../../a/foo/b/c'), isFalse);
-      expect(r.isWithin(
-          'http://dartlang.org/', 'http://dartlang.org/baz/bang'), isTrue);
+      expect(r.isWithin('http://dartlang.org/', 'http://dartlang.org/baz/bang'),
+          isTrue);
       expect(r.isWithin('.', 'http://dartlang.org/baz/bang'), isFalse);
     });
   });
@@ -667,8 +659,8 @@
     test('does not add separator if a part ends in one', () {
       expect(context.absolute('a/', 'b', 'c/', 'd'),
           'http://dartlang.org/root/path/a/b/c/d');
-      expect(context.absolute(r'a\', 'b'),
-          r'http://dartlang.org/root/path/a\/b');
+      expect(
+          context.absolute(r'a\', 'b'), r'http://dartlang.org/root/path/a\/b');
     });
 
     test('ignores parts before an absolute path', () {
@@ -709,8 +701,8 @@
       expect(context.fromUri(Uri.parse('file:///path/to/foo')),
           'file:///path/to/foo');
       expect(context.fromUri(Uri.parse('foo/bar')), 'foo/bar');
-      expect(context.fromUri(
-          Uri.parse('http://dartlang.org/path/to/foo%23bar')),
+      expect(
+          context.fromUri(Uri.parse('http://dartlang.org/path/to/foo%23bar')),
           'http://dartlang.org/path/to/foo%23bar');
       // Since the resulting "path" is also a URL, special characters should
       // remain percent-encoded in the result.
@@ -729,8 +721,8 @@
         Uri.parse('http://dartlang.org/path/to/foo'));
     expect(context.toUri('http://dartlang.org/path/to/foo/'),
         Uri.parse('http://dartlang.org/path/to/foo/'));
-    expect(context.toUri('file:///path/to/foo'),
-        Uri.parse('file:///path/to/foo'));
+    expect(
+        context.toUri('file:///path/to/foo'), Uri.parse('file:///path/to/foo'));
     expect(context.toUri('foo/bar'), Uri.parse('foo/bar'));
     expect(context.toUri('http://dartlang.org/path/to/foo%23bar'),
         Uri.parse('http://dartlang.org/path/to/foo%23bar'));
@@ -755,8 +747,7 @@
           'http://dartlang.org/other/path/a/b');
       expect(context.prettyUri('http://pub.dartlang.org/root/path'),
           'http://pub.dartlang.org/root/path');
-      expect(context.prettyUri('http://dartlang.org/root/other'),
-          '../other');
+      expect(context.prettyUri('http://dartlang.org/root/other'), '../other');
     });
 
     test('with a relative URI', () {
diff --git a/test/windows_test.dart b/test/windows_test.dart
index 1f5dc38..a174305 100644
--- a/test/windows_test.dart
+++ b/test/windows_test.dart
@@ -10,8 +10,8 @@
 import 'utils.dart';
 
 main() {
-  var context = new path.Context(style: path.Style.windows,
-                                 current: r'C:\root\path');
+  var context =
+      new path.Context(style: path.Style.windows, current: r'C:\root\path');
 
   group('separator', () {
     expect(context.separator, '\\');
@@ -247,7 +247,7 @@
     test('join does not modify internal ., .., or trailing separators', () {
       expect(context.join('a/', 'b/c/'), 'a/b/c/');
       expect(context.join(r'a\b\./c\..\\', r'd\..\.\..\\e\f\\'),
-             r'a\b\./c\..\\d\..\.\..\\e\f\\');
+          r'a\b\./c\..\\d\..\.\..\\e\f\\');
       expect(context.join(r'a\b', r'c\..\..\..\..'), r'a\b\c\..\..\..\..');
       expect(context.join(r'a', 'b${context.separator}'), r'a\b\');
     });
@@ -301,8 +301,8 @@
           equals([r'\\server\share', 'foo', 'bar', 'baz']));
       expect(context.split(r'\\server\share'), equals([r'\\server\share']));
 
-      expect(context.split(r'\foo\bar\baz'),
-          equals([r'\', 'foo', 'bar', 'baz']));
+      expect(
+          context.split(r'\foo\bar\baz'), equals([r'\', 'foo', 'bar', 'baz']));
       expect(context.split(r'\'), equals([r'\']));
     });
   });
@@ -321,7 +321,7 @@
       expect(context.normalize(r'C:\'), r'C:\');
       expect(context.normalize(r'\\server\share'), r'\\server\share');
       expect(context.normalize('a\\.\\\xc5\u0bf8-;\u{1f085}\u{00}\\c\\d\\..\\'),
-             'a\\\xc5\u0bf8-;\u{1f085}\u{00}\x5cc');
+          'a\\\xc5\u0bf8-;\u{1f085}\u{00}\x5cc');
     });
 
     test('collapses redundant separators', () {
@@ -350,8 +350,8 @@
       expect(context.normalize(r'..\..\..'), r'..\..\..');
       expect(context.normalize(r'../..\..\'), r'..\..\..');
       expect(context.normalize(r'\\server\share\..'), r'\\server\share');
-      expect(context.normalize(r'\\server\share\..\../..\a'),
-          r'\\server\share\a');
+      expect(
+          context.normalize(r'\\server\share\..\../..\a'), r'\\server\share\a');
       expect(context.normalize(r'c:\..'), r'c:\');
       expect(context.normalize(r'A:/..\..\..'), r'A:\');
       expect(context.normalize(r'b:\..\..\..\a'), r'b:\a');
@@ -483,16 +483,16 @@
     });
 
     test('from a root with extension', () {
-      var r = new path.Context(
-          style: path.Style.windows, current: r'C:\dir.ext');
+      var r =
+          new path.Context(style: path.Style.windows, current: r'C:\dir.ext');
       expect(r.relative(r'C:\dir.ext\file'), 'file');
     });
 
     test('with a root parameter', () {
       expect(context.relative(r'C:\foo\bar\baz', from: r'C:\foo\bar'),
           equals('baz'));
-      expect(context.relative('..', from: r'C:\foo\bar'),
-          equals(r'..\..\root'));
+      expect(
+          context.relative('..', from: r'C:\foo\bar'), equals(r'..\..\root'));
       expect(context.relative('..', from: r'D:\foo\bar'), equals(r'C:\root'));
       expect(context.relative(r'C:\foo\bar\baz', from: r'foo\bar'),
           equals(r'..\..\..\..\foo\bar\baz'));
@@ -553,8 +553,8 @@
       expect(context.absolute('a', 'b'), r'C:\root\path\a\b');
       expect(context.absolute('a', 'b', 'c'), r'C:\root\path\a\b\c');
       expect(context.absolute('a', 'b', 'c', 'd'), r'C:\root\path\a\b\c\d');
-      expect(context.absolute('a', 'b', 'c', 'd', 'e'),
-          r'C:\root\path\a\b\c\d\e');
+      expect(
+          context.absolute('a', 'b', 'c', 'd', 'e'), r'C:\root\path\a\b\c\d\e');
       expect(context.absolute('a', 'b', 'c', 'd', 'e', 'f'),
           r'C:\root\path\a\b\c\d\e\f');
       expect(context.absolute('a', 'b', 'c', 'd', 'e', 'f', 'g'),
@@ -600,18 +600,18 @@
       expect(context.fromUri(Uri.parse('file://server/share/path/to/foo')),
           r'\\server\share\path\to\foo');
       expect(context.fromUri(Uri.parse('file:///C:/')), r'C:\');
-      expect(context.fromUri(Uri.parse('file://server/share')),
-          r'\\server\share');
+      expect(
+          context.fromUri(Uri.parse('file://server/share')), r'\\server\share');
       expect(context.fromUri(Uri.parse('foo/bar')), r'foo\bar');
       expect(context.fromUri(Uri.parse('/C:/path/to/foo')), r'C:\path\to\foo');
-      expect(context.fromUri(Uri.parse('///C:/path/to/foo')),
-          r'C:\path\to\foo');
+      expect(
+          context.fromUri(Uri.parse('///C:/path/to/foo')), r'C:\path\to\foo');
       expect(context.fromUri(Uri.parse('//server/share/path/to/foo')),
           r'\\server\share\path\to\foo');
       expect(context.fromUri(Uri.parse('file:///C:/path/to/foo%23bar')),
           r'C:\path\to\foo#bar');
-      expect(context.fromUri(
-          Uri.parse('file://server/share/path/to/foo%23bar')),
+      expect(
+          context.fromUri(Uri.parse('file://server/share/path/to/foo%23bar')),
           r'\\server\share\path\to\foo#bar');
       expect(context.fromUri(Uri.parse('_%7B_%7D_%60_%5E_%20_%22_%25_')),
           r'_{_}_`_^_ _"_%_');
@@ -625,14 +625,14 @@
   });
 
   test('toUri', () {
-    expect(context.toUri(r'C:\path\to\foo'),
-        Uri.parse('file:///C:/path/to/foo'));
+    expect(
+        context.toUri(r'C:\path\to\foo'), Uri.parse('file:///C:/path/to/foo'));
     expect(context.toUri(r'C:\path\to\foo\'),
         Uri.parse('file:///C:/path/to/foo/'));
     expect(context.toUri(r'C:\'), Uri.parse('file:///C:/'));
     expect(context.toUri(r'\\server\share'), Uri.parse('file://server/share'));
-    expect(context.toUri(r'\\server\share\'),
-        Uri.parse('file://server/share/'));
+    expect(
+        context.toUri(r'\\server\share\'), Uri.parse('file://server/share/'));
     expect(context.toUri(r'foo\bar'), Uri.parse('foo/bar'));
     expect(context.toUri(r'C:\path\to\foo#bar'),
         Uri.parse('file:///C:/path/to/foo%23bar'));
@@ -648,12 +648,11 @@
     test('with a file: URI', () {
       expect(context.prettyUri('file:///C:/root/path/a/b'), r'a\b');
       expect(context.prettyUri('file:///C:/root/path/a/../b'), r'b');
-      expect(context.prettyUri('file:///C:/other/path/a/b'),
-          r'C:\other\path\a\b');
-      expect(context.prettyUri('file:///D:/root/path/a/b'),
-          r'D:\root\path\a\b');
-      expect(context.prettyUri('file:///C:/root/other'),
-          r'..\other');
+      expect(
+          context.prettyUri('file:///C:/other/path/a/b'), r'C:\other\path\a\b');
+      expect(
+          context.prettyUri('file:///D:/root/path/a/b'), r'D:\root\path\a\b');
+      expect(context.prettyUri('file:///C:/root/other'), r'..\other');
     });
 
     test('with an http: URI', () {