Index: packages/package_config/test/discovery_test.dart |
diff --git a/packages/package_config/test/discovery_test.dart b/packages/package_config/test/discovery_test.dart |
index 4f780c2ad716489a9caad0bcfd0401715f52574b..8807ac497e41a307ae0e2da7630d3594849653b8 100644 |
--- a/packages/package_config/test/discovery_test.dart |
+++ b/packages/package_config/test/discovery_test.dart |
@@ -21,11 +21,11 @@ baz:packages/baz/ |
void validatePackagesFile(Packages resolver, Uri location) { |
expect(resolver, isNotNull); |
expect(resolver.resolve(pkg("foo", "bar/baz")), |
- equals(Uri.parse("file:///dart/packages/foo/bar/baz"))); |
+ equals(Uri.parse("file:///dart/packages/foo/bar/baz"))); |
expect(resolver.resolve(pkg("bar", "baz/qux")), |
- equals(Uri.parse("http://example.com/dart/packages/bar/baz/qux"))); |
+ equals(Uri.parse("http://example.com/dart/packages/bar/baz/qux"))); |
expect(resolver.resolve(pkg("baz", "qux/foo")), |
- equals(location.resolve("packages/baz/qux/foo"))); |
+ equals(location.resolve("packages/baz/qux/foo"))); |
expect(resolver.packages, unorderedEquals(["foo", "bar", "baz"])); |
} |
@@ -33,11 +33,11 @@ void validatePackagesDir(Packages resolver, Uri location) { |
// Expect three packages: foo, bar and baz |
expect(resolver, isNotNull); |
expect(resolver.resolve(pkg("foo", "bar/baz")), |
- equals(location.resolve("packages/foo/bar/baz"))); |
+ equals(location.resolve("packages/foo/bar/baz"))); |
expect(resolver.resolve(pkg("bar", "baz/qux")), |
- equals(location.resolve("packages/bar/baz/qux"))); |
+ equals(location.resolve("packages/bar/baz/qux"))); |
expect(resolver.resolve(pkg("baz", "qux/foo")), |
- equals(location.resolve("packages/baz/qux/foo"))); |
+ equals(location.resolve("packages/baz/qux/foo"))); |
if (location.scheme == "file") { |
expect(resolver.packages, unorderedEquals(["foo", "bar", "baz"])); |
} else { |
@@ -45,7 +45,6 @@ void validatePackagesDir(Packages resolver, Uri location) { |
} |
} |
- |
Uri pkg(String packageName, String packagePath) { |
var path; |
if (packagePath.startsWith('/')) { |
@@ -57,11 +56,11 @@ Uri pkg(String packageName, String packagePath) { |
} |
main() { |
- generalTest(".packages", |
- {".packages": packagesFile, |
- "script.dart": "main(){}", |
- "packages": {"shouldNotBeFound": {}}}, |
- (Uri location) async { |
+ generalTest(".packages", { |
+ ".packages": packagesFile, |
+ "script.dart": "main(){}", |
+ "packages": {"shouldNotBeFound": {}} |
+ }, (Uri location) async { |
Packages resolver; |
resolver = await findPackages(location); |
validatePackagesFile(resolver, location); |
@@ -76,36 +75,36 @@ main() { |
validatePackagesFile(resolver, location); |
}); |
- generalTest("packages/", |
- {"packages": { "foo": {}, "bar": {}, "baz": {}}, |
- "script.dart": "main(){}"}, |
- (Uri location) async { |
+ generalTest("packages/", { |
+ "packages": {"foo": {}, "bar": {}, "baz": {}}, |
+ "script.dart": "main(){}" |
+ }, (Uri location) async { |
Packages resolver; |
bool isFile = (location.scheme == "file"); |
resolver = await findPackages(location); |
validatePackagesDir(resolver, location); |
resolver = await findPackages(location.resolve("script.dart")); |
validatePackagesDir(resolver, location); |
- var specificDiscovery = isFile |
- ? findPackagesFromFile |
- : findPackagesFromNonFile; |
+ var specificDiscovery = |
+ isFile ? findPackagesFromFile : findPackagesFromNonFile; |
resolver = await specificDiscovery(location); |
validatePackagesDir(resolver, location); |
resolver = await specificDiscovery(location.resolve("script.dart")); |
validatePackagesDir(resolver, location); |
}); |
- generalTest("underscore packages", |
- {"packages": {"_foo": {}}}, |
- (Uri location) async { |
+ generalTest("underscore packages", { |
+ "packages": {"_foo": {}} |
+ }, (Uri location) async { |
Packages resolver = await findPackages(location); |
expect(resolver.resolve(pkg("_foo", "foo.dart")), |
- equals(location.resolve("packages/_foo/foo.dart"))); |
+ equals(location.resolve("packages/_foo/foo.dart"))); |
}); |
- fileTest(".packages recursive", |
- {".packages": packagesFile, "subdir": {"script.dart": "main(){}"}}, |
- (Uri location) async { |
+ fileTest(".packages recursive", { |
+ ".packages": packagesFile, |
+ "subdir": {"script.dart": "main(){}"} |
+ }, (Uri location) async { |
Packages resolver; |
resolver = await findPackages(location.resolve("subdir/")); |
validatePackagesFile(resolver, location); |
@@ -118,9 +117,10 @@ main() { |
validatePackagesFile(resolver, location); |
}); |
- httpTest(".packages not recursive", |
- {".packages": packagesFile, "subdir": {"script.dart": "main(){}"}}, |
- (Uri location) async { |
+ httpTest(".packages not recursive", { |
+ ".packages": packagesFile, |
+ "subdir": {"script.dart": "main(){}"} |
+ }, (Uri location) async { |
Packages resolver; |
var subdir = location.resolve("subdir/"); |
resolver = await findPackages(subdir); |
@@ -133,9 +133,7 @@ main() { |
validatePackagesDir(resolver, subdir); |
}); |
- fileTest("no packages", |
- {"script.dart": "main(){}"}, |
- (Uri location) async { |
+ fileTest("no packages", {"script.dart": "main(){}"}, (Uri location) async { |
// A file: location with no .packages or packages returns |
// Packages.noPackages. |
Packages resolver; |
@@ -149,9 +147,7 @@ main() { |
expect(resolver, same(Packages.noPackages)); |
}); |
- httpTest("no packages", |
- {"script.dart": "main(){}"}, |
- (Uri location) async { |
+ httpTest("no packages", {"script.dart": "main(){}"}, (Uri location) async { |
// A non-file: location with no .packages or packages/: |
// Assumes a packages dir exists, and resolves relative to that. |
Packages resolver; |
@@ -167,7 +163,7 @@ main() { |
test(".packages w/ loader", () async { |
Uri location = Uri.parse("krutch://example.com/path/"); |
- Future loader(Uri file) async { |
+ Future<List<int>> loader(Uri file) async { |
if (file.path.endsWith(".packages")) { |
return packagesFile.codeUnits; |
} |
@@ -178,19 +174,19 @@ main() { |
Packages resolver; |
resolver = await findPackages(location, loader: loader); |
validatePackagesFile(resolver, location); |
- resolver = await findPackages(location.resolve("script.dart"), |
- loader: loader); |
+ resolver = |
+ await findPackages(location.resolve("script.dart"), loader: loader); |
validatePackagesFile(resolver, location); |
resolver = await findPackagesFromNonFile(location, loader: loader); |
validatePackagesFile(resolver, location); |
resolver = await findPackagesFromNonFile(location.resolve("script.dart"), |
- loader: loader); |
+ loader: loader); |
validatePackagesFile(resolver, location); |
}); |
test("no packages w/ loader", () async { |
Uri location = Uri.parse("krutch://example.com/path/"); |
- Future loader(Uri file) async { |
+ Future<List<int>> loader(Uri file) async { |
throw "not found"; |
} |
// A non-file: location with no .packages or packages/: |
@@ -198,59 +194,55 @@ main() { |
Packages resolver; |
resolver = await findPackages(location, loader: loader); |
validatePackagesDir(resolver, location); |
- resolver = await findPackages(location.resolve("script.dart"), |
- loader: loader); |
+ resolver = |
+ await findPackages(location.resolve("script.dart"), loader: loader); |
validatePackagesDir(resolver, location); |
resolver = await findPackagesFromNonFile(location, loader: loader); |
validatePackagesDir(resolver, location); |
resolver = await findPackagesFromNonFile(location.resolve("script.dart"), |
- loader:loader); |
+ loader: loader); |
validatePackagesDir(resolver, location); |
}); |
- generalTest("loadPackagesFile", |
- {".packages": packagesFile}, |
- (Uri directory) async { |
+ generalTest("loadPackagesFile", {".packages": packagesFile}, |
+ (Uri directory) async { |
Uri file = directory.resolve(".packages"); |
Packages resolver = await loadPackagesFile(file); |
validatePackagesFile(resolver, file); |
}); |
- generalTest("loadPackagesFile non-default name", |
- {"pheldagriff": packagesFile}, |
- (Uri directory) async { |
+ generalTest( |
+ "loadPackagesFile non-default name", {"pheldagriff": packagesFile}, |
+ (Uri directory) async { |
Uri file = directory.resolve("pheldagriff"); |
Packages resolver = await loadPackagesFile(file); |
validatePackagesFile(resolver, file); |
}); |
test("loadPackagesFile w/ loader", () async { |
- loader(Uri uri) async => packagesFile.codeUnits; |
+ Future<List<int>> loader(Uri uri) async => packagesFile.codeUnits; |
Uri file = Uri.parse("krutz://example.com/.packages"); |
Packages resolver = await loadPackagesFile(file, loader: loader); |
validatePackagesFile(resolver, file); |
}); |
- generalTest("loadPackagesFile not found", |
- {}, |
- (Uri directory) async { |
+ generalTest("loadPackagesFile not found", {}, (Uri directory) async { |
Uri file = directory.resolve(".packages"); |
expect(loadPackagesFile(file), throws); |
}); |
- generalTest("loadPackagesFile syntax error", |
- {".packages": "syntax error"}, |
- (Uri directory) async { |
+ generalTest("loadPackagesFile syntax error", {".packages": "syntax error"}, |
+ (Uri directory) async { |
Uri file = directory.resolve(".packages"); |
expect(loadPackagesFile(file), throws); |
}); |
- generalTest("getPackagesDir", |
- {"packages": {"foo": {}, "bar": {}, "baz": {}}}, |
- (Uri directory) async { |
+ generalTest("getPackagesDir", { |
+ "packages": {"foo": {}, "bar": {}, "baz": {}} |
+ }, (Uri directory) async { |
Uri packages = directory.resolve("packages/"); |
Packages resolver = getPackagesDirectory(packages); |
- Uri resolved = resolver.resolve(pkg("foo","flip/flop")); |
+ Uri resolved = resolver.resolve(pkg("foo", "flip/flop")); |
expect(resolved, packages.resolve("foo/flip/flop")); |
}); |
} |
@@ -260,9 +252,7 @@ main() { |
/// Description is a map, each key is a file entry. If the value is a map, |
/// it's a sub-dir, otherwise it's a file and the value is the content |
/// as a string. |
-void fileTest(String name, |
- Map description, |
- Future fileTest(Uri directory)) { |
+void fileTest(String name, Map description, Future fileTest(Uri directory)) { |
group("file-test", () { |
Directory tempDir = Directory.systemTemp.createTempSync("file-test"); |
setUp(() { |
@@ -285,31 +275,27 @@ void httpTest(String name, Map description, Future httpTest(Uri directory)) { |
var serverSub; |
var uri; |
setUp(() { |
- return HttpServer |
- .bind(InternetAddress.LOOPBACK_IP_V4, 0) |
- .then((server) { |
- uri = new Uri(scheme: "http", |
- host: "127.0.0.1", |
- port: server.port, |
- path: "/"); |
- serverSub = server.listen((HttpRequest request) { |
- // No error handling. |
- var path = request.uri.path; |
- if (path.startsWith('/')) path = path.substring(1); |
- if (path.endsWith('/')) path = path.substring(0, path.length - 1); |
- var parts = path.split('/'); |
- var fileOrDir = description; |
- for (int i = 0; i < parts.length; i++) { |
- fileOrDir = fileOrDir[parts[i]]; |
- if (fileOrDir == null) { |
- request.response.statusCode = 404; |
- request.response.close(); |
- } |
+ return HttpServer.bind(InternetAddress.LOOPBACK_IP_V4, 0).then((server) { |
+ uri = new Uri( |
+ scheme: "http", host: "127.0.0.1", port: server.port, path: "/"); |
+ serverSub = server.listen((HttpRequest request) { |
+ // No error handling. |
+ var path = request.uri.path; |
+ if (path.startsWith('/')) path = path.substring(1); |
+ if (path.endsWith('/')) path = path.substring(0, path.length - 1); |
+ var parts = path.split('/'); |
+ var fileOrDir = description; |
+ for (int i = 0; i < parts.length; i++) { |
+ fileOrDir = fileOrDir[parts[i]]; |
+ if (fileOrDir == null) { |
+ request.response.statusCode = 404; |
+ request.response.close(); |
} |
- request.response.write(fileOrDir); |
- request.response.close(); |
- }); |
+ } |
+ request.response.write(fileOrDir); |
+ request.response.close(); |
}); |
+ }); |
}); |
tearDown(() => serverSub.cancel()); |
test(name, () => httpTest(uri)); |