Module:Delink/testcases
< Module:Delink
Jump to navigation
Jump to search
Revision as of 14:09, 3 April 2013 by blackwiki>Mr. Stradivarius (two more URI test cases)
Documentation for this module may be created at Module:Delink/testcases/doc
local p = require('Module:UnitTests')
function p:test_basic()
self:preprocess_equals('{{#invoke:Delink|delink|[[Apple]]}}', 'Apple')
self:preprocess_equals('{{#invoke:Delink|delink|[[Orange]]s are dissimilar to [[Apple]]s}}', 'Oranges are dissimilar to Apples')
self:preprocess_equals('{{#invoke:Delink|delink|[[Apple]]s and [[orange]]s and [[fruit salad|other kinds of fruit]]}}', 'Apples and oranges and other kinds of fruit')
self:preprocess_equals('{{#invoke:Delink|delink|All [[Gone]] [[wikt:to|]] [[Bed]] [[Now]]}}', 'All Gone to Bed Now')
self:preprocess_equals('{{#invoke:Delink|delink|[[Survey]] of [http://books.google.com Google Books] on [[UK|Britain]]}}', 'Survey of Google Books on Britain')
end
function p:test_cats_and_interwikis()
self:preprocess_equals('{{#invoke:Delink|delink|[[Category:Foo]]}}', '')
self:preprocess_equals('{{#invoke:Delink|delink|[[es:Foo]]}}', '')
self:preprocess_equals('{{#invoke:Delink|delink|[[wikt:Foo]]}}', 'wikt:Foo')
self:preprocess_equals('{{#invoke:Delink|delink|[[es:Wikipedia:Políticas]]}}', '')
self:preprocess_equals('{{#invoke:Delink|delink|[[abcd:efgh:ijkl]]}}', 'abcd:efgh:ijkl')
self:preprocess_equals('{{#invoke:Delink|delink|[[cbk-zam:abcd:efgh]]}}', '')
end
function p:test_colontrick()
self:preprocess_equals('{{#invoke:Delink|delink|[[:Category:Foo]]}}', 'Category:Foo')
self:preprocess_equals('{{#invoke:Delink|delink|[[:es:Foo]]}}', 'es:Foo')
self:preprocess_equals('{{#invoke:Delink|delink|[[:wikt:Foo]]}}', 'wikt:Foo')
self:preprocess_equals('{{#invoke:Delink|delink|[[:es:Wikipedia:Políticas]]}}', 'es:Wikipedia:Políticas')
self:preprocess_equals('{{#invoke:Delink|delink|[[:abcd:efgh:ijkl]]}}', 'abcd:efgh:ijkl')
self:preprocess_equals('{{#invoke:Delink|delink|[[:cbk-zam:abcd:efgh]]}}', 'cbk-zam:abcd:efgh')
end
function p:test_pipetrick()
self:preprocess_equals('{{#invoke:Delink|delink|[[Pipe (computing)|]]}}', 'Pipe')
self:preprocess_equals('{{#invoke:Delink|delink|[[Boston, Massachusetts|]]}}', 'Boston')
self:preprocess_equals('{{#invoke:Delink|delink|[[Wikipedia:Verifiability|]]}}', 'Verifiability')
self:preprocess_equals('{{#invoke:Delink|delink|[[User:Example|]]}}', 'Example')
self:preprocess_equals('{{#invoke:Delink|delink|[[Template:Welcome|]]}}', 'Welcome')
self:preprocess_equals('{{#invoke:Delink|delink|[[Yours, Mine and Ours (1968 film)|]]}}', 'Yours, Mine and Ours')
self:preprocess_equals('{{#invoke:Delink|delink|[[:es:Wikipedia:Políticas|]]}}', 'Wikipedia:Políticas')
self:preprocess_equals('{{#invoke:Delink|delink|[[Il Buono, il Brutto, il Cattivo|]]}}', 'Il Buono')
self:preprocess_equals('{{#invoke:Delink|delink|[[Wikipedia:Manual of Style (Persian)|]]}}', 'Manual of Style')
self:preprocess_equals('{{#invoke:Delink|delink|[[Wikipedia:Manual of Style(Persian)|]]}}', 'Manual of Style')
end
function p:test_badlinks()
self:preprocess_equals('{{#invoke:Delink|delink|[[<]]}}', '[[<]]')
self:preprocess_equals('{{#invoke:Delink|delink|[[Category:<]]}}', '[[Category:<]]')
self:preprocess_equals('{{#invoke:Delink|delink|[[:Category:<]]}}', '[[:Category:<]]')
self:preprocess_equals('{{#invoke:Delink|delink|[[:Category:<|Foo]]}}', '[[:Category:<|Foo]]')
self:preprocess_equals('{{#invoke:Delink|delink|[[:Category:<|]]}}', '[[:Category:<|]]')
self:preprocess_equals('{{#invoke:Delink|delink|[[:Category:Foo|<]]}}', '<')
self:preprocess_equals('{{#invoke:Delink|delink|[[Category:Foo|<]]}}', '')
self:preprocess_equals('{{#invoke:Delink|delink|[[Foo:Bar|<]]}}', '<')
self:preprocess_equals('{{#invoke:Delink|delink|[[Foo:Bar:>]]}}', '[[Foo:Bar:>]]')
self:preprocess_equals('{{#invoke:Delink|delink|[[es:Wikipedia:<]]}}', '[[es:Wikipedia:<]]')
self:preprocess_equals('{{#invoke:Delink|delink|[[es:Wikipedia:Foo|<]]}}', '')
self:preprocess_equals('{{#invoke:Delink|delink|[[:es:Wikipedia:<]]}}', '[[:es:Wikipedia:<]]')
self:preprocess_equals('{{#invoke:Delink|delink|[[:es:Wikipedia:Foo|<]]}}', '<')
self:preprocess_equals('{{#invoke:Delink|delink|[[Foo:Bar:Foo#>]]}}', 'Foo:Bar:Foo#>')
self:preprocess_equals('{{#invoke:Delink|delink|[[Foo:Bar:Foo>#Baz]]}}', '[[Foo:Bar:Foo>#Baz]]')
self:preprocess_equals('{{#invoke:Delink|delink|[[Foo#Bar>#Baz]]}}', 'Foo#Bar>#Baz')
self:preprocess_equals('{{#invoke:Delink|delink|[[Foo>#Bar#Baz]]}}', '[[Foo>#Bar#Baz]]')
self:preprocess_equals('{{#invoke:Delink|delink|[[wikt:es:asdf:�Template:title#Fragment]]}}', '[[wikt:es:asdf:�Template:title#Fragment]]')
end
function p:test_URI()
self:preprocess_equals('{{#invoke:Delink|delink|[/foo]}}', '[/foo]')
self:preprocess_equals('{{#invoke:Delink|delink|[/foo bar]}}', '[/foo bar]')
self:preprocess_equals('{{#invoke:Delink|delink|[//foo]}}', '')
self:preprocess_equals('{{#invoke:Delink|delink|[//foo bar]}}', 'bar')
self:preprocess_equals('{{#invoke:Delink|delink|[///foo]}}', '')
self:preprocess_equals('{{#invoke:Delink|delink|[///foo bar]}}', 'bar')
self:preprocess_equals('{{#invoke:Delink|delink|[////foo]}}', '')
self:preprocess_equals('{{#invoke:Delink|delink|[////foo bar]}}', 'bar')
self:preprocess_equals('{{#invoke:Delink|delink|[///////////////////////////////////foo]}}', '')
self:preprocess_equals('{{#invoke:Delink|delink|[///////////////////////////////////foo bar]}}', 'bar')
self:preprocess_equals('{{#invoke:Delink|delink|[://foo]}}', '[://foo]')
self:preprocess_equals('{{#invoke:Delink|delink|[:://foo]}}', '[:://foo]')
end
return p