OLD | NEW |
| (Empty) |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | |
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. | |
4 | |
5 import "package:expect/expect.dart"; | |
6 | |
7 testHttpUri() { | |
8 void check(Uri uri, String expected) { | |
9 Expect.equals(expected, uri.toString()); | |
10 } | |
11 | |
12 check(new Uri.http("", ""), "http:"); | |
13 check(new Uri.http("@:", ""), "http://"); | |
14 check(new Uri.http("@:8080", ""), "http://:8080"); | |
15 check(new Uri.http("@host:", ""), "http://host"); | |
16 check(new Uri.http("@host:", ""), "http://host"); | |
17 check(new Uri.http("xxx:yyy@host:8080", ""), "http://xxx:yyy@host:8080"); | |
18 check(new Uri.http("host", "a"), "http://host/a"); | |
19 check(new Uri.http("host", "/a"), "http://host/a"); | |
20 check(new Uri.http("host", "a/"), "http://host/a/"); | |
21 check(new Uri.http("host", "/a/"), "http://host/a/"); | |
22 check(new Uri.http("host", "a/b"), "http://host/a/b"); | |
23 check(new Uri.http("host", "/a/b"), "http://host/a/b"); | |
24 check(new Uri.http("host", "a/b/"), "http://host/a/b/"); | |
25 check(new Uri.http("host", "/a/b/"), "http://host/a/b/"); | |
26 check(new Uri.http("host", "a b"), "http://host/a%20b"); | |
27 check(new Uri.http("host", "/a b"), "http://host/a%20b"); | |
28 check(new Uri.http("host", "/a b/"), "http://host/a%20b/"); | |
29 check(new Uri.http("host", "/a%2F"), "http://host/a%252F"); | |
30 check(new Uri.http("host", "/a%2F/"), "http://host/a%252F/"); | |
31 check(new Uri.http("host", "/a/b", {"c": "d"}), "http://host/a/b?c=d"); | |
32 check( | |
33 new Uri.http("host", "/a/b", {"c=": "&d"}), "http://host/a/b?c%3D=%26d"); | |
34 check(new Uri.http("[::]", "a"), "http://[::]/a"); | |
35 check(new Uri.http("[::127.0.0.1]", "a"), "http://[::127.0.0.1]/a"); | |
36 } | |
37 | |
38 testHttpsUri() { | |
39 void check(Uri uri, String expected) { | |
40 Expect.equals(expected, uri.toString()); | |
41 } | |
42 | |
43 check(new Uri.https("", ""), "https:"); | |
44 check(new Uri.https("@:", ""), "https://"); | |
45 check(new Uri.https("@:8080", ""), "https://:8080"); | |
46 check(new Uri.https("@host:", ""), "https://host"); | |
47 check(new Uri.https("@host:", ""), "https://host"); | |
48 check(new Uri.https("xxx:yyy@host:8080", ""), "https://xxx:yyy@host:8080"); | |
49 check(new Uri.https("host", "a"), "https://host/a"); | |
50 check(new Uri.https("host", "/a"), "https://host/a"); | |
51 check(new Uri.https("host", "a/"), "https://host/a/"); | |
52 check(new Uri.https("host", "/a/"), "https://host/a/"); | |
53 check(new Uri.https("host", "a/b"), "https://host/a/b"); | |
54 check(new Uri.https("host", "/a/b"), "https://host/a/b"); | |
55 check(new Uri.https("host", "a/b/"), "https://host/a/b/"); | |
56 check(new Uri.https("host", "/a/b/"), "https://host/a/b/"); | |
57 check(new Uri.https("host", "a b"), "https://host/a%20b"); | |
58 check(new Uri.https("host", "/a b"), "https://host/a%20b"); | |
59 check(new Uri.https("host", "/a b/"), "https://host/a%20b/"); | |
60 check(new Uri.https("host", "/a%2F"), "https://host/a%252F"); | |
61 check(new Uri.https("host", "/a%2F/"), "https://host/a%252F/"); | |
62 check(new Uri.https("host", "/a/b", {"c": "d"}), "https://host/a/b?c=d"); | |
63 check(new Uri.https("host", "/a/b", {"c=": "&d"}), | |
64 "https://host/a/b?c%3D=%26d"); | |
65 check(new Uri.https("[::]", "a"), "https://[::]/a"); | |
66 check(new Uri.https("[::127.0.0.1]", "a"), "https://[::127.0.0.1]/a"); | |
67 } | |
68 | |
69 testResolveHttpScheme() { | |
70 String s = "//myserver:1234/path/some/thing"; | |
71 Uri uri = Uri.parse(s); | |
72 Uri http = new Uri(scheme: "http"); | |
73 Uri https = new Uri(scheme: "https"); | |
74 Expect.equals("http:$s", http.resolveUri(uri).toString()); | |
75 Expect.equals("https:$s", https.resolveUri(uri).toString()); | |
76 } | |
77 | |
78 main() { | |
79 testHttpUri(); | |
80 testHttpsUri(); | |
81 testResolveHttpScheme(); | |
82 } | |
OLD | NEW |