Revision e1282a63
Added by koszko almost 2 years ago
test/unit/test_patterns.py | ||
---|---|---|
100 | 100 |
deco = execute_in_page('returnval(deconstruct_url(arguments[0]));', |
101 | 101 |
'https://eXaMpLe.com/a/b?ver=1.2.3#heading2') |
102 | 102 |
assert deco |
103 |
assert deco['trailing_dash'] == False
|
|
104 |
assert deco['proto'] == 'https' |
|
105 |
assert deco['domain'] == ['example', 'com'] |
|
106 |
assert deco['path'] == ['a', 'b'] |
|
103 |
assert deco['trailing_slash'] == False
|
|
104 |
assert deco['proto'] == 'https'
|
|
105 |
assert deco['domain'] == ['example', 'com']
|
|
106 |
assert deco['path'] == ['a', 'b']
|
|
107 | 107 |
|
108 | 108 |
deco = execute_in_page('returnval(deconstruct_url(arguments[0]));', |
109 | 109 |
'http://**.example.com/') |
110 | 110 |
assert deco |
111 |
assert deco['trailing_dash'] == True
|
|
112 |
assert deco['proto'] == 'http' |
|
113 |
assert deco['domain'] == ['**', 'example', 'com'] |
|
114 |
assert deco['path'] == [] |
|
111 |
assert deco['trailing_slash'] == True
|
|
112 |
assert deco['proto'] == 'http'
|
|
113 |
assert deco['domain'] == ['**', 'example', 'com']
|
|
114 |
assert deco['path'] == []
|
|
115 | 115 |
|
116 | 116 |
deco = execute_in_page('returnval(deconstruct_url(arguments[0]));', |
117 | 117 |
'ftp://user@ftp.example.com/all///passwords.txt/') |
118 | 118 |
assert deco |
119 |
assert deco['trailing_dash'] == True
|
|
120 |
assert deco['proto'] == 'ftp' |
|
121 |
assert deco['domain'] == ['ftp', 'example', 'com'] |
|
122 |
assert deco['path'] == ['all', 'passwords.txt'] |
|
119 |
assert deco['trailing_slash'] == True
|
|
120 |
assert deco['proto'] == 'ftp'
|
|
121 |
assert deco['domain'] == ['ftp', 'example', 'com']
|
|
122 |
assert deco['path'] == ['all', 'passwords.txt']
|
|
123 | 123 |
|
124 | 124 |
deco = execute_in_page('returnval(deconstruct_url(arguments[0]));', |
125 | 125 |
'ftp://mirror.edu.pl.eu.org') |
126 | 126 |
assert deco |
127 |
assert deco['trailing_dash'] == False
|
|
128 |
assert deco['proto'] == 'ftp' |
|
129 |
assert deco['domain'] == ['mirror', 'edu', 'pl', 'eu', 'org'] |
|
130 |
assert deco['path'] == [] |
|
127 |
assert deco['trailing_slash'] == False
|
|
128 |
assert deco['proto'] == 'ftp'
|
|
129 |
assert deco['domain'] == ['mirror', 'edu', 'pl', 'eu', 'org']
|
|
130 |
assert deco['path'] == []
|
|
131 | 131 |
|
132 | 132 |
deco = execute_in_page('returnval(deconstruct_url(arguments[0]));', |
133 | 133 |
'file:///mnt/parabola_chroot///etc/passwd') |
134 | 134 |
assert deco |
135 |
assert deco['trailing_dash'] == False |
|
136 |
assert deco['proto'] == 'file' |
|
137 |
assert deco['path'] == ['mnt', 'parabola_chroot', 'etc', 'passwd'] |
|
135 |
assert deco['trailing_slash'] == False |
|
136 |
assert deco['proto'] == 'file' |
|
137 |
assert deco['path'] == ['mnt', 'parabola_chroot', 'etc', 'passwd'] |
|
138 |
assert 'domain' not in deco |
|
138 | 139 |
|
139 | 140 |
for bad_url in [ |
140 | 141 |
'://bad-url.missing/protocol', |
Also available in: Unified diff
finish implementing more efficient querying of URL patterns
The algorithm is implemented and tested. However, it is yet to be hooked into the actual extension.