|
1 | | -<!DOCTYPE html> |
| 1 | +<!DOCTYPE html> |
2 | 2 | <html> |
3 | 3 | <head> |
4 | 4 | <title>Dragonfly - URI class</title> |
| 5 | + <metea charset="utf-8"> |
5 | 6 | <link rel="stylesheet" href="qunit/qunit.css" media="screen"> |
6 | 7 | <script src="qunit/qunit.js"></script> |
7 | 8 | <script src="../src/scripts/uri.js"></script> |
|
11 | 12 |
|
12 | 13 |
|
13 | 14 | test("uri", function() |
14 | | -{ |
| 15 | +{ |
15 | 16 | var uri = new URI("http://edition.cnn.com/.element/ssi/intl/breaking_news/3.0/banner.html?csiID=csi1#hello"); |
16 | 17 |
|
17 | 18 | equal(uri.protocol, "http:"); |
|
27 | 28 | deepEqual(uri.path_parts, [".element", "ssi", "intl", "breaking_news", "3.0", "banner.html"]); |
28 | 29 | equal(uri.short_distinguisher, "banner.html?csiID=csi1#hello"); |
29 | 30 |
|
30 | | - var uri = new URI("foo.txt"); |
| 31 | + var uri = new URI("http://a.b.c/foo.txt"); |
31 | 32 |
|
32 | | - equal(uri.protocol, ""); |
33 | | - equal(uri.host, ""); |
34 | | - equal(uri.pathname, "foo.txt"); |
| 33 | + equal(uri.protocol, "http:"); |
| 34 | + equal(uri.host, "a.b.c"); |
| 35 | + equal(uri.pathname, "/foo.txt"); |
35 | 36 | equal(uri.search, ""); |
36 | 37 | equal(uri.hash, ""); |
37 | 38 | equal(uri.filename, "foo.txt"); |
38 | 39 | equal(uri.extension, "txt"); |
39 | | - equal(uri.dir_pathname, ""); |
40 | | - equal(uri.abs_dir, ""); |
| 40 | + equal(uri.dir_pathname, "/"); |
| 41 | + equal(uri.abs_dir, "http://a.b.c/"); |
41 | 42 | deepEqual(uri.params, []); |
42 | 43 | deepEqual(uri.path_parts, ["foo.txt"]); |
43 | 44 | equal(uri.short_distinguisher, "foo.txt"); |
|
94 | 95 |
|
95 | 96 | var uri = new URI("http://edition.cnn.com/"); |
96 | 97 | equal(uri.short_distinguisher, "edition.cnn.com"); |
97 | | - |
| 98 | + equal(uri.pathname, "/"); |
| 99 | + |
98 | 100 | var uri = new URI("data:text/html,<p>?a=b#a"); |
99 | 101 | equal(uri.protocol, "data:"); |
100 | 102 | equal(uri.host, ""); |
|
108 | 110 | deepEqual(uri.params, []); |
109 | 111 | deepEqual(uri.path_parts, []); |
110 | 112 | equal(uri.short_distinguisher, "data:text/html,<p>?a=b#a"); |
| 113 | + |
| 114 | + var uri = new URI("http://a.b.c"); |
| 115 | + equal(uri.protocol, "http:"); |
| 116 | + equal(uri.host, "a.b.c"); |
| 117 | + equal(uri.pathname, ""); |
| 118 | + equal(uri.dir_pathname, ""); |
| 119 | + equal(uri.abs_dir, "http://a.b.c"); |
| 120 | + equal(uri.basename, ""); |
| 121 | + equal(uri.filename, ""); |
| 122 | + equal(uri.short_url, "a.b.c"); |
| 123 | + |
| 124 | + var uri = new URI("http://a.b.c/a/b/c/"); |
| 125 | + equal(uri.protocol, "http:"); |
| 126 | + equal(uri.host, "a.b.c"); |
| 127 | + equal(uri.pathname, "/a/b/c/"); |
| 128 | + equal(uri.dir_pathname, "/a/b/c/"); |
| 129 | + equal(uri.abs_dir, "http://a.b.c/a/b/c/"); |
| 130 | + equal(uri.basename, "c/"); |
| 131 | + equal(uri.filename, ""); |
| 132 | + equal(uri.short_url, "c/"); |
| 133 | + |
| 134 | + var uri = new URI("http://a.b.c/a/b/c/d"); |
| 135 | + equal(uri.protocol, "http:"); |
| 136 | + equal(uri.host, "a.b.c"); |
| 137 | + equal(uri.pathname, "/a/b/c/d"); |
| 138 | + equal(uri.dir_pathname, "/a/b/c/"); |
| 139 | + equal(uri.abs_dir, "http://a.b.c/a/b/c/"); |
| 140 | + equal(uri.basename, "d"); |
| 141 | + equal(uri.filename, "d"); |
| 142 | + equal(uri.short_url, "d"); |
| 143 | + |
| 144 | + var uri = new URI("data:text/plain,a"); |
| 145 | + equal(uri.protocol, "data:"); |
| 146 | + equal(uri.host, ""); |
| 147 | + equal(uri.pathname, "text/plain,a"); |
| 148 | + equal(uri.dir_pathname, ""); |
| 149 | + equal(uri.abs_dir, ""); |
| 150 | + equal(uri.basename, ""); |
| 151 | + equal(uri.filename, ""); |
| 152 | + equal(uri.short_url, "data:text/plain,a…"); |
| 153 | + |
| 154 | + var uri = new URI("data:text/plain,abcdefghijklmnopqrstuvwxyz"); |
| 155 | + equal(uri.protocol, "data:"); |
| 156 | + equal(uri.host, ""); |
| 157 | + equal(uri.pathname, "text/plain,abcdefghijklmnopqrstuvwxyz"); |
| 158 | + equal(uri.dir_pathname, ""); |
| 159 | + equal(uri.abs_dir, ""); |
| 160 | + equal(uri.basename, ""); |
| 161 | + equal(uri.filename, ""); |
| 162 | + equal(uri.short_url, "data:text/plain,abcd…"); |
| 163 | + |
111 | 164 | }); |
112 | 165 |
|
113 | 166 |
|
|
0 commit comments