Module:URL/testcases: Difference between revisions
Appearance
Content deleted Content added
test the sandbox version |
Implemented <wbr/> testing |
||
Line 15: | Line 15: | ||
cases = { |
cases = { |
||
{'EXAMPLE.com', '[http://EXAMPLE.com example.com]'}, |
{'EXAMPLE.com', '[http://EXAMPLE.com example<wbr/>.com]'}, |
||
{'example.com', '[http://example.com example.com]'}, |
{'example.com', '[http://example.com example<wbr/>.com]'}, |
||
{'www.example.com', '[http://www.example.com www.example.com]'}, |
{'www.example.com', '[http://www.example.com www<wbr/>.example<wbr/>.com]'}, |
||
{'http://www.example.com', '[http://www.example.com www.example.com]'}, |
{'http://www.example.com', '[http://www.example.com www<wbr/>.example<wbr/>.com]'}, |
||
{'https://www.example.com', '[https://www.example.com www.example.com]'}, |
{'https://www.example.com', '[https://www.example.com www<wbr/>.example<wbr/>.com]'}, |
||
{'ftp://www.example.com', '[ftp://www.example.com www.example.com]'}, |
{'ftp://www.example.com', '[ftp://www.example.com www<wbr/>.example<wbr/>.com]'}, |
||
{'//www.example.com', '[//www.example.com www.example.com]'}, |
{'//www.example.com', '[//www.example.com www<wbr/>.example<wbr/>.com]'}, |
||
{'ftp://ftp.example.com', '[ftp://ftp.example.com ftp.example.com]'}, |
{'ftp://ftp.example.com', '[ftp://ftp.example.com ftp<wbr/>.example<wbr/>.com]'}, |
||
{'http://www.example.com/', '[http://www.example.com/ www.example.com]'}, |
{'http://www.example.com/', '[http://www.example.com/ www<wbr/>.example<wbr/>.com]'}, |
||
{'http://www.example.com/path', '[http://www.example.com/path www.example.com/path]'}, |
{'http://www.example.com/path', '[http://www.example.com/path www<wbr/>.example<wbr/>.com<wbr/>/path]'}, |
||
{'www.example.com/foo', '[http://www.example.com/foo www.example.com/foo]'}, |
{'www.example.com/foo', '[http://www.example.com/foo www<wbr/>.example<wbr/>.com<wbr/>/foo]'}, |
||
{'http://www.example.com/foo | link', '[http://www.example.com/foo link]'}, |
{'http://www.example.com/foo | link', '[http://www.example.com/foo link]'}, |
||
{'www.example.com/foo | link', '[http://www.example.com/foo link]'}, |
{'www.example.com/foo | link', '[http://www.example.com/foo link]'}, |
||
{'http://www.example.com/path/', '[http://www.example.com/path/ www.example.com/path/]'}, |
{'http://www.example.com/path/', '[http://www.example.com/path/ www<wbr/>.example<wbr/>.com<wbr/>/path<wbr/>/]'}, |
||
{'www.example.com/foo/', '[http://www.example.com/foo/ www.example.com/foo/]'}, |
{'www.example.com/foo/', '[http://www.example.com/foo/ www<wbr/>.example<wbr/>.com<wbr/>/foo<wbr/>/]'}, |
||
{'1=http://www.example.com/path?section=17', '[http://www.example.com/path?section=17 www.example.com/path?section=17]'}, |
{'1=http://www.example.com/path?section=17', '[http://www.example.com/path?section=17 www<wbr/>.example<wbr/>.com<wbr/>/path?section=17]'}, |
||
{'1=www.example.com/foo?page=42 ', '[http://www.example.com/foo?page=42 www.example.com/foo?page=42]'}, |
{'1=www.example.com/foo?page=42 ', '[http://www.example.com/foo?page=42 www<wbr/>.example<wbr/>.com<wbr/>/foo?page=42]'}, |
||
{'http://www.example.com/foo/ | link', '[http://www.example.com/foo/ link]'}, |
{'http://www.example.com/foo/ | link', '[http://www.example.com/foo/ link]'}, |
||
{'www.example.com/foo/ | link', '[http://www.example.com/foo/ link]'}, |
{'www.example.com/foo/ | link', '[http://www.example.com/foo/ link]'}, |
||
Line 37: | Line 37: | ||
-- From [[Template:URL/testcases]] (and not already listed above) |
-- From [[Template:URL/testcases]] (and not already listed above) |
||
{'http://', '[http:// ]'}, |
{'http://', '[http:// ]'}, |
||
{'WWW.EXAMPLE.COM', '[http://WWW.EXAMPLE.COM www.example.com]'}, |
{'WWW.EXAMPLE.COM', '[http://WWW.EXAMPLE.COM www<wbr/>.example<wbr/>.com]'}, |
||
{'https://www.EXAMPLE.cOm', '[https://www.EXAMPLE.cOm www.example.com]'}, |
{'https://www.EXAMPLE.cOm', '[https://www.EXAMPLE.cOm www<wbr/>.example<wbr/>.com]'}, |
||
{'HTTPS://www.EXAMPLE.cOm/', '[HTTPS://www.EXAMPLE.cOm/ www.example.com]'}, |
{'HTTPS://www.EXAMPLE.cOm/', '[HTTPS://www.EXAMPLE.cOm/ www<wbr/>.example<wbr/>.com]'}, |
||
{'https://www.example.com/', '[https://www.example.com/ www.example.com]'}, |
{'https://www.example.com/', '[https://www.example.com/ www<wbr/>.example<wbr/>.com]'}, |
||
{'http://example.com', '[http://example.com example.com]'}, |
{'http://example.com', '[http://example.com example<wbr/>.com]'}, |
||
{'https://example.com', '[https://example.com example.com]'}, |
{'https://example.com', '[https://example.com example<wbr/>.com]'}, |
||
{'ftp://example.com', '[ftp://example.com example.com]'}, |
{'ftp://example.com', '[ftp://example.com example<wbr/>.com]'}, |
||
{'http://www.example.com/foo/bar', '[http://www.example.com/foo/bar www.example.com/foo/bar]'}, |
{'http://www.example.com/foo/bar', '[http://www.example.com/foo/bar www<wbr/>.example<wbr/>.com<wbr/>/foo<wbr/>/bar]'}, |
||
{'http://www.example.com/foo/bar/', '[http://www.example.com/foo/bar/ www.example.com/foo/bar/]'}, |
{'http://www.example.com/foo/bar/', '[http://www.example.com/foo/bar/ www<wbr/>.example<wbr/>.com<wbr/>/foo<wbr/>/bar<wbr/>/]'}, |
||
{'http://www.example.com/foO/BaR', '[http://www.example.com/foO/BaR www.example.com/foO/BaR]'}, |
{'http://www.example.com/foO/BaR', '[http://www.example.com/foO/BaR www<wbr/>.example<wbr/>.com<wbr/>/foO<wbr/>/BaR]'}, |
||
{'https://www.example.com/foo/bar', '[https://www.example.com/foo/bar www.example.com/foo/bar]'}, |
{'https://www.example.com/foo/bar', '[https://www.example.com/foo/bar www<wbr/>.example<wbr/>.com<wbr/>/foo<wbr/>/bar]'}, |
||
{'http://example.com/foo/bar', '[http://example.com/foo/bar example.com/foo/bar]'}, |
{'http://example.com/foo/bar', '[http://example.com/foo/bar example<wbr/>.com<wbr/>/foo<wbr/>/bar]'}, |
||
{'https://example.com/foo/bar', '[https://example.com/foo/bar example.com/foo/bar]'}, |
{'https://example.com/foo/bar', '[https://example.com/foo/bar example<wbr/>.com<wbr/>/foo<wbr/>/bar]'}, |
||
{'example.com/foo/bar', '[http://example.com/foo/bar example.com/foo/bar]'}, |
{'example.com/foo/bar', '[http://example.com/foo/bar example<wbr/>.com<wbr/>/foo<wbr/>/bar]'}, |
||
{'www.example.com/foo/bar', '[http://www.example.com/foo/bar www.example.com/foo/bar]'}, |
{'www.example.com/foo/bar', '[http://www.example.com/foo/bar www<wbr/>.example<wbr/>.com<wbr/>/foo<wbr/>/bar]'}, |
||
{'http://example.com/foo/bar | ', '[http://example.com/foo/bar example.com/foo/bar]'}, |
{'http://example.com/foo/bar | ', '[http://example.com/foo/bar example<wbr/>.com<wbr/>/foo<wbr/>/bar]'}, |
||
{'1=http://www.example.com?foo=BaR', '[http://www.example.com?foo=BaR www.example.com?foo=BaR]'}, |
{'1=http://www.example.com?foo=BaR', '[http://www.example.com?foo=BaR www<wbr/>.example<wbr/>.com?foo=BaR]'}, |
||
{'http://www.example.com#fooBaR', '[http://www.example.com#fooBaR www.example.com#fooBaR]'}, |
{'http://www.example.com#fooBaR', '[http://www.example.com#fooBaR www<wbr/>.example<wbr/>.com<wbr/>#fooBaR]'}, |
||
{'http://www.example.com:8080', '[http://www.example.com:8080 www.example.com:8080]'}, |
{'http://www.example.com:8080', '[http://www.example.com:8080 www<wbr/>.example<wbr/>.com:8080]'}, |
||
{'http://www.example.com:8080/foo/bar', '[http://www.example.com:8080/foo/bar www.example.com:8080/foo/bar]'}, |
{'http://www.example.com:8080/foo/bar', '[http://www.example.com:8080/foo/bar www<wbr/>.example<wbr/>.com:8080<wbr/>/foo<wbr/>/bar]'}, |
||
{'www.example.com:8080', '[http://www.example.com:8080 www.example.com:8080]'}, |
{'www.example.com:8080', '[http://www.example.com:8080 www<wbr/>.example<wbr/>.com:8080]'}, |
||
{'www.example.com:8080/foo/bar', '[http://www.example.com:8080/foo/bar www.example.com:8080/foo/bar]'}, |
{'www.example.com:8080/foo/bar', '[http://www.example.com:8080/foo/bar www<wbr/>.example<wbr/>.com:8080<wbr/>/foo<wbr/>/bar]'}, |
||
{'http://www.example.com/foo bar', '[http://www.example.com/foo%20bar www.example.com/foo%20bar]'}, |
{'http://www.example.com/foo bar', '[http://www.example.com/foo%20bar www<wbr/>.example<wbr/>.com<wbr/>/foo%20bar]'}, |
||
{'www.example.com/foo bar', '[http://www.example.com/foo%20bar www.example.com/foo%20bar]'}, |
{'www.example.com/foo bar', '[http://www.example.com/foo%20bar www<wbr/>.example<wbr/>.com<wbr/>/foo%20bar]'}, |
||
{'http://example.com/foo/bar | link', '[http://example.com/foo/bar link]'}, |
{'http://example.com/foo/bar | link', '[http://example.com/foo/bar link]'}, |
||
{'https://example.com/foo/bar | link', '[https://example.com/foo/bar link]'}, |
{'https://example.com/foo/bar | link', '[https://example.com/foo/bar link]'}, |
||
Line 67: | Line 67: | ||
{'www.example.com/foo/bar | 捦挺挎', '[http://www.example.com/foo/bar 捦挺挎]'}, |
{'www.example.com/foo/bar | 捦挺挎', '[http://www.example.com/foo/bar 捦挺挎]'}, |
||
{'www.example.com/foo/捦挺挎/bar | link', '[http://www.example.com/foo/捦挺挎/bar link]'}, |
{'www.example.com/foo/捦挺挎/bar | link', '[http://www.example.com/foo/捦挺挎/bar link]'}, |
||
{'عمان.icom.museum', '[http://عمان.icom.museum عمان.icom.museum]'}, |
{'عمان.icom.museum', '[http://عمان.icom.museum عمان<wbr/>.icom<wbr/>.museum]'}, |
||
{'http://عمان.icom.museum', '[http://عمان.icom.museum عمان.icom.museum]'}, |
{'http://عمان.icom.museum', '[http://عمان.icom.museum عمان<wbr/>.icom<wbr/>.museum]'}, |
||
{'1964thetribute.com', '[http://1964thetribute.com 1964thetribute.com]'}, |
{'1964thetribute.com', '[http://1964thetribute.com 1964thetribute<wbr/>.com]'}, |
||
{'1964thetribute.com | 1964thetribute.com', '[http://1964thetribute.com 1964thetribute.com]'}, |
{'1964thetribute.com | 1964thetribute.com', '[http://1964thetribute.com 1964thetribute<wbr/>.com]'}, |
||
{'1= http://www.example.com/foo/bar?a=b&c=d', '[http://www.example.com/foo/bar?a=b&c=d www.example.com/foo/bar?a=b&c=d]'}, |
{'1= http://www.example.com/foo/bar?a=b&c=d', '[http://www.example.com/foo/bar?a=b&c=d www<wbr/>.example<wbr/>.com<wbr/>/foo<wbr/>/bar?a=b&c=d]'}, |
||
{'1=www.hti.umich.edu/cgi/t/text/pageviewer-idx?c=umhistmath;cc=umhistmath;rgn=full%20text;idno=ABS3153.0001.001;didno=ABS3153.0001.001;view=image;seq=00000140', |
{'1=www.hti.umich.edu/cgi/t/text/pageviewer-idx?c=umhistmath;cc=umhistmath;rgn=full%20text;idno=ABS3153.0001.001;didno=ABS3153.0001.001;view=image;seq=00000140', |
||
'[http://www.hti.umich.edu/cgi/t/text/pageviewer-idx?c=umhistmath;cc=umhistmath;rgn=full%20text;idno=ABS3153.0001.001;didno=ABS3153.0001.001;view=image;seq=00000140 www.hti.umich.edu/cgi/t/text/pageviewer-idx?c=umhistmath%3Bcc%3Dumhistmath%3Brgn%3Dfull+text%3Bidno%3DABS3153.0001.001%3Bdidno%3DABS3153.0001.001%3Bview%3Dimage%3Bseq%3D00000140]'}, |
'[http://www.hti.umich.edu/cgi/t/text/pageviewer-idx?c=umhistmath;cc=umhistmath;rgn=full%20text;idno=ABS3153.0001.001;didno=ABS3153.0001.001;view=image;seq=00000140 www<wbr/>.hti<wbr/>.umich<wbr/>.edu<wbr/>/cgi<wbr/>/t<wbr/>/text<wbr/>/pageviewer-idx?c=umhistmath%3Bcc%3Dumhistmath%3Brgn%3Dfull+text%3Bidno%3DABS3153.0001.001%3Bdidno%3DABS3153.0001.001%3Bview%3Dimage%3Bseq%3D00000140]'}, |
||
} |
} |
||
Revision as of 17:50, 30 November 2014
![]() | This is the test cases page for the module Module:URL. Results of the test cases. |
-- Unit tests for [[Module:URL]]. Click talk page to run tests.
local p = require('Module:UnitTests')
function p:test_url()
local cases = {
'{{#invoke:URL/sandbox|url}}',
'{{#invoke:URL/sandbox|url|}}',
'{{#invoke:URL/sandbox|url||}}',
'{{#invoke:URL/sandbox|url|http://www.example.com/foo/bar?a=b&c=d}}',
}
text = self.frame:expandTemplate{ title = 'tlx', args = { 'URL', "''example.com''", "''optional display text''" } }
for _, case in ipairs(cases) do
self:preprocess_equals(case, text)
end
cases = {
{'EXAMPLE.com', '[http://EXAMPLE.com example<wbr/>.com]'},
{'example.com', '[http://example.com example<wbr/>.com]'},
{'www.example.com', '[http://www.example.com www<wbr/>.example<wbr/>.com]'},
{'http://www.example.com', '[http://www.example.com www<wbr/>.example<wbr/>.com]'},
{'https://www.example.com', '[https://www.example.com www<wbr/>.example<wbr/>.com]'},
{'ftp://www.example.com', '[ftp://www.example.com www<wbr/>.example<wbr/>.com]'},
{'//www.example.com', '[//www.example.com www<wbr/>.example<wbr/>.com]'},
{'ftp://ftp.example.com', '[ftp://ftp.example.com ftp<wbr/>.example<wbr/>.com]'},
{'http://www.example.com/', '[http://www.example.com/ www<wbr/>.example<wbr/>.com]'},
{'http://www.example.com/path', '[http://www.example.com/path www<wbr/>.example<wbr/>.com<wbr/>/path]'},
{'www.example.com/foo', '[http://www.example.com/foo www<wbr/>.example<wbr/>.com<wbr/>/foo]'},
{'http://www.example.com/foo | link', '[http://www.example.com/foo link]'},
{'www.example.com/foo | link', '[http://www.example.com/foo link]'},
{'http://www.example.com/path/', '[http://www.example.com/path/ www<wbr/>.example<wbr/>.com<wbr/>/path<wbr/>/]'},
{'www.example.com/foo/', '[http://www.example.com/foo/ www<wbr/>.example<wbr/>.com<wbr/>/foo<wbr/>/]'},
{'1=http://www.example.com/path?section=17', '[http://www.example.com/path?section=17 www<wbr/>.example<wbr/>.com<wbr/>/path?section=17]'},
{'1=www.example.com/foo?page=42 ', '[http://www.example.com/foo?page=42 www<wbr/>.example<wbr/>.com<wbr/>/foo?page=42]'},
{'http://www.example.com/foo/ | link', '[http://www.example.com/foo/ link]'},
{'www.example.com/foo/ | link', '[http://www.example.com/foo/ link]'},
-- From [[Template:URL/testcases]] (and not already listed above)
{'http://', '[http:// ]'},
{'WWW.EXAMPLE.COM', '[http://WWW.EXAMPLE.COM www<wbr/>.example<wbr/>.com]'},
{'https://www.EXAMPLE.cOm', '[https://www.EXAMPLE.cOm www<wbr/>.example<wbr/>.com]'},
{'HTTPS://www.EXAMPLE.cOm/', '[HTTPS://www.EXAMPLE.cOm/ www<wbr/>.example<wbr/>.com]'},
{'https://www.example.com/', '[https://www.example.com/ www<wbr/>.example<wbr/>.com]'},
{'http://example.com', '[http://example.com example<wbr/>.com]'},
{'https://example.com', '[https://example.com example<wbr/>.com]'},
{'ftp://example.com', '[ftp://example.com example<wbr/>.com]'},
{'http://www.example.com/foo/bar', '[http://www.example.com/foo/bar www<wbr/>.example<wbr/>.com<wbr/>/foo<wbr/>/bar]'},
{'http://www.example.com/foo/bar/', '[http://www.example.com/foo/bar/ www<wbr/>.example<wbr/>.com<wbr/>/foo<wbr/>/bar<wbr/>/]'},
{'http://www.example.com/foO/BaR', '[http://www.example.com/foO/BaR www<wbr/>.example<wbr/>.com<wbr/>/foO<wbr/>/BaR]'},
{'https://www.example.com/foo/bar', '[https://www.example.com/foo/bar www<wbr/>.example<wbr/>.com<wbr/>/foo<wbr/>/bar]'},
{'http://example.com/foo/bar', '[http://example.com/foo/bar example<wbr/>.com<wbr/>/foo<wbr/>/bar]'},
{'https://example.com/foo/bar', '[https://example.com/foo/bar example<wbr/>.com<wbr/>/foo<wbr/>/bar]'},
{'example.com/foo/bar', '[http://example.com/foo/bar example<wbr/>.com<wbr/>/foo<wbr/>/bar]'},
{'www.example.com/foo/bar', '[http://www.example.com/foo/bar www<wbr/>.example<wbr/>.com<wbr/>/foo<wbr/>/bar]'},
{'http://example.com/foo/bar | ', '[http://example.com/foo/bar example<wbr/>.com<wbr/>/foo<wbr/>/bar]'},
{'1=http://www.example.com?foo=BaR', '[http://www.example.com?foo=BaR www<wbr/>.example<wbr/>.com?foo=BaR]'},
{'http://www.example.com#fooBaR', '[http://www.example.com#fooBaR www<wbr/>.example<wbr/>.com<wbr/>#fooBaR]'},
{'http://www.example.com:8080', '[http://www.example.com:8080 www<wbr/>.example<wbr/>.com:8080]'},
{'http://www.example.com:8080/foo/bar', '[http://www.example.com:8080/foo/bar www<wbr/>.example<wbr/>.com:8080<wbr/>/foo<wbr/>/bar]'},
{'www.example.com:8080', '[http://www.example.com:8080 www<wbr/>.example<wbr/>.com:8080]'},
{'www.example.com:8080/foo/bar', '[http://www.example.com:8080/foo/bar www<wbr/>.example<wbr/>.com:8080<wbr/>/foo<wbr/>/bar]'},
{'http://www.example.com/foo bar', '[http://www.example.com/foo%20bar www<wbr/>.example<wbr/>.com<wbr/>/foo%20bar]'},
{'www.example.com/foo bar', '[http://www.example.com/foo%20bar www<wbr/>.example<wbr/>.com<wbr/>/foo%20bar]'},
{'http://example.com/foo/bar | link', '[http://example.com/foo/bar link]'},
{'https://example.com/foo/bar | link', '[https://example.com/foo/bar link]'},
{'example.com/foo/bar | link', '[http://example.com/foo/bar link]'},
{'www.example.com/foo/bar | link', '[http://www.example.com/foo/bar link]'},
{'www.example.com/foo/bar | 捦挺挎', '[http://www.example.com/foo/bar 捦挺挎]'},
{'www.example.com/foo/捦挺挎/bar | link', '[http://www.example.com/foo/捦挺挎/bar link]'},
{'عمان.icom.museum', '[http://عمان.icom.museum عمان<wbr/>.icom<wbr/>.museum]'},
{'http://عمان.icom.museum', '[http://عمان.icom.museum عمان<wbr/>.icom<wbr/>.museum]'},
{'1964thetribute.com', '[http://1964thetribute.com 1964thetribute<wbr/>.com]'},
{'1964thetribute.com | 1964thetribute.com', '[http://1964thetribute.com 1964thetribute<wbr/>.com]'},
{'1= http://www.example.com/foo/bar?a=b&c=d', '[http://www.example.com/foo/bar?a=b&c=d www<wbr/>.example<wbr/>.com<wbr/>/foo<wbr/>/bar?a=b&c=d]'},
{'1=www.hti.umich.edu/cgi/t/text/pageviewer-idx?c=umhistmath;cc=umhistmath;rgn=full%20text;idno=ABS3153.0001.001;didno=ABS3153.0001.001;view=image;seq=00000140',
'[http://www.hti.umich.edu/cgi/t/text/pageviewer-idx?c=umhistmath;cc=umhistmath;rgn=full%20text;idno=ABS3153.0001.001;didno=ABS3153.0001.001;view=image;seq=00000140 www<wbr/>.hti<wbr/>.umich<wbr/>.edu<wbr/>/cgi<wbr/>/t<wbr/>/text<wbr/>/pageviewer-idx?c=umhistmath%3Bcc%3Dumhistmath%3Brgn%3Dfull+text%3Bidno%3DABS3153.0001.001%3Bdidno%3DABS3153.0001.001%3Bview%3Dimage%3Bseq%3D00000140]'},
}
for _, case in ipairs(cases) do
self:preprocess_equals('{{#invoke:URL/sandbox|url|' .. case[1] .. '}}', '<span class="url">' .. case[2] .. '</span>', {nowiki=true})
end
self:preprocess_equals('{{#invoke:URL/sandbox|url|2= example.com}}', 'example.com', {nowiki=true})
self:preprocess_equals('{{#invoke:URL/sandbox|url|2= http://example.com/foo}}', 'http://example.com/foo', {nowiki=true})
end
return p