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

Side by Side Diff: packages/package_config/test/parse_test.dart

Issue 2989763002: Update charted to 0.4.8 and roll (Closed)
Patch Set: Removed Cutch from list of reviewers Created 3 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library package_config.parse_test; 5 library package_config.parse_test;
6 6
7 import "package:package_config/packages.dart"; 7 import "package:package_config/packages.dart";
8 import "package:package_config/packages_file.dart" show parse; 8 import "package:package_config/packages_file.dart" show parse;
9 import "package:package_config/src/packages_impl.dart"; 9 import "package:package_config/src/packages_impl.dart";
10 import "package:test/test.dart"; 10 import "package:test/test.dart";
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
66 66
67 test("single absolute path", () { 67 test("single absolute path", () {
68 var packages = doParse(singleAbsolutePathSample, base); 68 var packages = doParse(singleAbsolutePathSample, base);
69 expect(packages.packages.toList(), equals(["foo"])); 69 expect(packages.packages.toList(), equals(["foo"]));
70 expect(packages.resolve(Uri.parse("package:foo/bar/baz.dart")), 70 expect(packages.resolve(Uri.parse("package:foo/bar/baz.dart")),
71 equals(base.replace(path: "/test/bar/baz.dart"))); 71 equals(base.replace(path: "/test/bar/baz.dart")));
72 }); 72 });
73 73
74 test("multiple", () { 74 test("multiple", () {
75 var packages = doParse(multiRelativeSample, base); 75 var packages = doParse(multiRelativeSample, base);
76 expect( 76 expect(packages.packages.toList()..sort(), equals(["bar", "foo"]));
77 packages.packages.toList()..sort(), equals(["bar", "foo"]));
78 expect(packages.resolve(Uri.parse("package:foo/bar/baz.dart")), 77 expect(packages.resolve(Uri.parse("package:foo/bar/baz.dart")),
79 equals(base.resolve("../test/").resolve("bar/baz.dart"))); 78 equals(base.resolve("../test/").resolve("bar/baz.dart")));
80 expect(packages.resolve(Uri.parse("package:bar/foo/baz.dart")), 79 expect(packages.resolve(Uri.parse("package:bar/foo/baz.dart")),
81 equals(base.resolve("../test2/").resolve("foo/baz.dart"))); 80 equals(base.resolve("../test2/").resolve("foo/baz.dart")));
82 }); 81 });
83 82
84 test("dot-dot 1", () { 83 test("dot-dot 1", () {
85 var packages = doParse(singleRelativeSample, base); 84 var packages = doParse(singleRelativeSample, base);
86 expect(packages.packages.toList(), equals(["foo"])); 85 expect(packages.packages.toList(), equals(["foo"]));
87 expect(packages.resolve(Uri.parse("package:foo/qux/../bar/baz.dart")), 86 expect(packages.resolve(Uri.parse("package:foo/qux/../bar/baz.dart")),
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
128 }); 127 });
129 } 128 }
130 } 129 }
131 130
132 Packages doParse(String sample, Uri baseUri) { 131 Packages doParse(String sample, Uri baseUri) {
133 Map<String, Uri> map = parse(sample.codeUnits, baseUri); 132 Map<String, Uri> map = parse(sample.codeUnits, baseUri);
134 return new MapPackages(map); 133 return new MapPackages(map);
135 } 134 }
136 135
137 // Valid samples. 136 // Valid samples.
138 var emptySample = ""; 137 var emptySample = "";
139 var commentOnlySample = "# comment only\n"; 138 var commentOnlySample = "# comment only\n";
140 var emptyLinesSample = "\n\n\r\n"; 139 var emptyLinesSample = "\n\n\r\n";
141 var singleRelativeSample = "foo:../test/\n"; 140 var singleRelativeSample = "foo:../test/\n";
142 var singleRelativeSampleNoSlash = "foo:../test\n"; 141 var singleRelativeSampleNoSlash = "foo:../test\n";
143 var singleRelativeSampleNoNewline = "foo:../test/"; 142 var singleRelativeSampleNoNewline = "foo:../test/";
144 var singleAbsoluteSample = "foo:http://example.com/some/where/\n"; 143 var singleAbsoluteSample = "foo:http://example.com/some/where/\n";
145 var singleEmptyPathSample = "foo:\n"; 144 var singleEmptyPathSample = "foo:\n";
146 var singleAbsolutePathSample = "foo:/test/\n"; 145 var singleAbsolutePathSample = "foo:/test/\n";
147 var multiRelativeSample = "foo:../test/\nbar:../test2/\n"; 146 var multiRelativeSample = "foo:../test/\nbar:../test2/\n";
148 // All valid path segment characters in an URI. 147 // All valid path segment characters in an URI.
149 var allValidChars = 148 var allValidChars = r"!$&'()*+,-.0123456789;="
150 r"!$&'()*+,-.0123456789;="
151 r"@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~"; 149 r"@ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz~";
152 150
153 var allValidCharsSample = "${allValidChars}:../test/\n"; 151 var allValidCharsSample = "${allValidChars}:../test/\n";
154 152
155 // Invalid samples. 153 // Invalid samples.
156 var invalid = [ 154 var invalid = [
157 ":baz.dart", // empty. 155 ":baz.dart", // empty.
158 "foobar=baz.dart", // no colon (but an equals, which is not the same) 156 "foobar=baz.dart", // no colon (but an equals, which is not the same)
159 ".:../test/", // dot segment 157 ".:../test/", // dot segment
160 "..:../test/", // dot-dot segment 158 "..:../test/", // dot-dot segment
161 "...:../test/", // dot-dot-dot segment 159 "...:../test/", // dot-dot-dot segment
162 "foo/bar:../test/", // slash in name 160 "foo/bar:../test/", // slash in name
163 "/foo:../test/", // slash at start of name 161 "/foo:../test/", // slash at start of name
164 "?:../test/", // invalid characters. 162 "?:../test/", // invalid characters.
165 "[:../test/", // invalid characters. 163 "[:../test/", // invalid characters.
166 "x#:../test/", // invalid characters. 164 "x#:../test/", // invalid characters.
167 ]; 165 ];
OLDNEW
« no previous file with comments | « packages/package_config/test/discovery_test.dart ('k') | packages/package_config/test/parse_write_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698