Module:UrlToWiki/testcases

From Commons Wiki
Jump to navigation Jump to search

Template:Testcases module


-- <nowiki>
-- Unit tests for [[Global Lua Modules/UrlToWiki]].
-- @see [[Module talk:UrlToWiki/testcases]]
return {
    urlToWiki = {
        options = {
            mode   = 'invocation',
            nowiki = true
        },
        tests = {
            -- simple
            { 'https://en.wikipedia.org/wiki/Banana', '[[Banana]]' },
            { 'https://en.wikipedia.org/wiki/English_language', '[[English language]]' },
            { 'https://en.wikipedia.org/wiki/Module:UnitTests', '[[Module:UnitTests]]' },
            { 'https://en.wikipedia.org/wiki/Wikipedia_talk:Articles_for_deletion', '[[Wikipedia talk:Articles for deletion]]' },
            -- index.php
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Banana', '[[Banana]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}English_language', '[[English language]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Module:UnitTests', '[[Module:UnitTests]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Wikipedia_talk:Articles_for_deletion', '[[Wikipedia talk:Articles for deletion]]' },
            -- url parameters
            { 'url=https://en.wikipedia.org/w/index.php?title{{=}}Banana', '[[Banana]]' },
            { 'url=https://en.wikipedia.org/w/index.php?title{{=}}English_language', '[[English language]]' },
            { 'url=https://en.wikipedia.org/w/index.php?title{{=}}Module:UnitTests', '[[Module:UnitTests]]' },
            { 'url=https://en.wikipedia.org/w/index.php?title{{=}}Wikipedia_talk:Articles_for_deletion', '[[Wikipedia talk:Articles for deletion]]' },
            -- partial urls
            { 'Banana', '[[Banana]]' },
            { 'English_language', '[[English language]]' },
            { 'Module:UnitTests', '[[Module:UnitTests]]' },
            { 'Wikipedia_talk:Articles_for_deletion', '[[Wikipedia talk:Articles for deletion]]' },
            -- fragments
            { 'https://en.wikipedia.org/wiki/Banana#Etymology', '[[Banana#Etymology]]' },
            { 'https://en.wikipedia.org/wiki/English_language#Classification_and_related_languages', '[[English language#Classification and related languages]]' },
            { 'https://en.wikipedia.org/wiki/Module:UnitTests#preprocess_equals_many', '[[Module:UnitTests#preprocess equals many]]' },
            { 'https://en.wikipedia.org/wiki/Wikipedia_talk:Articles_for_deletion#Foo_bar', '[[Wikipedia talk:Articles for deletion#Foo bar]]' },
            { 'https://en.wikipedia.org/wiki/Wikipedia_talk:Articles_for_deletion/Archive_1#Proposed_reorganization', '[[Wikipedia talk:Articles for deletion/Archive 1#Proposed reorganization]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Banana#Etymology', '[[Banana#Etymology]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}English_language#Classification_and_related_languages', '[[English language#Classification and related languages]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Module:UnitTests#preprocess_equals_many', '[[Module:UnitTests#preprocess equals many]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Wikipedia_talk:Articles_for_deletion#Foo_bar', '[[Wikipedia talk:Articles for deletion#Foo bar]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Wikipedia_talk:Articles_for_deletion/Archive_1#Proposed_reorganization', '[[Wikipedia talk:Articles for deletion/Archive 1#Proposed reorganization]]' },
            { 'Banana#Etymology', '[[Banana#Etymology]]' },
            { 'English_language#Classification_and_related_languages', '[[English language#Classification and related languages]]' },
            { 'Module:UnitTests#preprocess_equals_many', '[[Module:UnitTests#preprocess equals many]]' },
            { 'Wikipedia_talk:Articles_for_deletion#Foo_bar', '[[Wikipedia talk:Articles for deletion#Foo bar]]' },
            { 'Wikipedia_talk:Articles_for_deletion/Archive_1#Proposed_reorganization', '[[Wikipedia talk:Articles for deletion/Archive 1#Proposed reorganization]]' },
            -- random sites
            { 'http://www.theguardian.com/tv-and-radio/2013/sep/22/the-simpsons-secret-formula-maths-simon-singh', 'http://www.theguardian.com/tv-and-radio/2013/sep/22/the-simpsons-secret-formula-maths-simon-singh' },
            { 'http://www.youtube.com/watch?v=AxTiaInrLW4', 'http://www.youtube.com/watch?v=AxTiaInrLW4' },
            { 'http://www.ietf.org/rfc/rfc3092.txt', 'http://www.ietf.org/rfc/rfc3092.txt' },
            -- actions
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Wikipedia%3AArticles_for_deletion&action=history', '[[Wikipedia:Articles for deletion]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Wikipedia:Articles_for_deletion&offset=20121106111840&action=history', '[[Wikipedia:Articles for deletion]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Wikipedia:Articles_for_deletion&action=edit', '[[Wikipedia:Articles for deletion]]' },
            -- interwikis
            { 'https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual', '[[mw:Extension:Scribunto/Lua reference manual]]' },
            { 'https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Lua_language', '[[mw:Extension:Scribunto/Lua reference manual#Lua language]]' },
            { 'https://www.mediawiki.org/w/index.php?title{{=}}Extension:Scribunto/Lua_reference_manual#Lua_language', '[[mw:Extension:Scribunto/Lua reference manual#Lua language]]' },
            { 'https://meta.wikimedia.org/wiki/Translation_requests/WMF', '[[m:Translation requests/WMF]]' },
            -- colon trick
            { 'https://en.wikipedia.org/wiki/Category:Wikipedians', '[[:Category:Wikipedians]]' },
            { 'https://en.wikipedia.org/wiki/File:Example.png', '[[:File:Example.png]]' },
            { 'https://en.wikipedia.org/wiki/Image:Example.png', '[[:Image:Example.png]]' },
            { 'https://en.wikipedia.org/wiki/Wikipedia_talk:Articles_for_deletion', '[[Wikipedia talk:Articles for deletion]]' },
            { 'https://es.wikipedia.org/wiki/Milord_%28tratamiento%29', '[[:es:Milord (tratamiento)]]' },
            { 'https://es.wikipedia.org/wiki/Wikipedia:Cartelera_de_acontecimientos', '[[:es:Wikipedia:Cartelera de acontecimientos]]' },
            -- no link
            { 'https://en.wikipedia.org/wiki/Banana|link=no', 'Banana' },
            { 'https://en.wikipedia.org/wiki/English_language|link=no', 'English language' },
            { 'https://en.wikipedia.org/wiki/Module:UnitTests|link=no', 'Module:UnitTests' },
            { 'https://en.wikipedia.org/wiki/Wikipedia_talk:Articles_for_deletion|link=no', 'Wikipedia talk:Articles for deletion' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Banana|link=no', 'Banana' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}English_language|link=no', 'English language' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Module:UnitTests|link=no', 'Module:UnitTests' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Wikipedia_talk:Articles_for_deletion|link=no', 'Wikipedia talk:Articles for deletion' },
            { 'Banana|link=no', 'Banana' },
            { 'English_language|link=no', 'English language' },
            { 'Module:UnitTests|link=no', 'Module:UnitTests' },
            { 'Wikipedia_talk:Articles_for_deletion|link=no', 'Wikipedia talk:Articles for deletion' },
            { 'https://en.wikipedia.org/wiki/Category:Wikipedians|link=no', 'Category:Wikipedians' },
            { 'https://en.wikipedia.org/wiki/File:Example.png|link=no', 'File:Example.png' },
            { 'https://en.wikipedia.org/wiki/Image:Example.png|link=no', 'Image:Example.png' },
            { 'https://en.wikipedia.org/wiki/Wikipedia_talk:Articles_for_deletion|link=no', 'Wikipedia talk:Articles for deletion' },
            { 'https://es.wikipedia.org/wiki/Milord_%28tratamiento%29|link=no', 'es:Milord (tratamiento)' },
            { 'https://es.wikipedia.org/wiki/Wikipedia:Cartelera_de_acontecimientos|link=no', 'es:Wikipedia:Cartelera de acontecimientos' },
            { 'https://en.wikipedia.org/wiki/English_language|link=no|display=Foo', 'English language' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}English_language|link=no|display=Foo', 'English language' },
            { 'Banana|link=no|display=Foo', 'Banana' },
            { 'https://es.wikipedia.org/wiki/Milord_%28tratamiento%29|link=no|display=Foo', 'es:Milord (tratamiento)' },       
            -- no colon trick
            { 'https://en.wikipedia.org/wiki/Category:Wikipedians|colontrick=no', '[[Category:Wikipedians]]' },
            { 'https://en.wikipedia.org/wiki/File:Example.png|colontrick=no', '[[File:Example.png]]' },
            { 'https://en.wikipedia.org/wiki/Image:Example.png|colontrick=no', '[[Image:Example.png]]' },
            { 'https://en.wikipedia.org/wiki/Wikipedia_talk:Articles_for_deletion|colontrick=no', '[[Wikipedia talk:Articles for deletion]]' },
            { 'https://es.wikipedia.org/wiki/Milord_%28tratamiento%29|colontrick=no', '[[es:Milord (tratamiento)]]' },
            { 'https://es.wikipedia.org/wiki/Wikipedia:Cartelera_de_acontecimientos|colontrick=no', '[[es:Wikipedia:Cartelera de acontecimientos]]' },
            -- display
            { 'https://en.wikipedia.org/wiki/Banana|display=Foo', '[[Banana|Foo]]' },
            { 'https://en.wikipedia.org/wiki/English_language|display=Foo', '[[English language|Foo]]' },
            { 'https://en.wikipedia.org/wiki/Module:UnitTests|display=Foo', '[[Module:UnitTests|Foo]]' },
            { 'https://en.wikipedia.org/wiki/Wikipedia_talk:Articles_for_deletion|display=Foo', '[[Wikipedia talk:Articles for deletion|Foo]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Banana|display=Foo', '[[Banana|Foo]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}English_language|display=Foo', '[[English language|Foo]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Module:UnitTests|display=Foo', '[[Module:UnitTests|Foo]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Wikipedia_talk:Articles_for_deletion|display=Foo', '[[Wikipedia talk:Articles for deletion|Foo]]' },
            { 'Banana|display=Foo', '[[Banana|Foo]]' },
            { 'English_language|display=Foo', '[[English language|Foo]]' },
            { 'Module:UnitTests|display=Foo', '[[Module:UnitTests|Foo]]' },
            { 'Wikipedia_talk:Articles_for_deletion|display=Foo', '[[Wikipedia talk:Articles for deletion|Foo]]' },
            { 'https://en.wikipedia.org/wiki/Banana#Etymology|display=Foo', '[[Banana#Etymology|Foo]]' },
            { 'https://en.wikipedia.org/wiki/English_language#Classification_and_related_languages|display=Foo', '[[English language#Classification and related languages|Foo]]' },
            { 'https://en.wikipedia.org/wiki/Module:UnitTests#preprocess_equals_many|display=Foo', '[[Module:UnitTests#preprocess equals many|Foo]]' },
            { 'https://en.wikipedia.org/wiki/Wikipedia_talk:Articles_for_deletion#Foo_bar|display=Foo', '[[Wikipedia talk:Articles for deletion#Foo bar|Foo]]' },
            { 'https://en.wikipedia.org/wiki/Wikipedia_talk:Articles_for_deletion/Archive_1#Proposed_reorganization|display=Foo', '[[Wikipedia talk:Articles for deletion/Archive 1#Proposed reorganization|Foo]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Banana#Etymology|display=Foo', '[[Banana#Etymology|Foo]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}English_language#Classification_and_related_languages|display=Foo', '[[English language#Classification and related languages|Foo]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Module:UnitTests#preprocess_equals_many|display=Foo', '[[Module:UnitTests#preprocess equals many|Foo]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Wikipedia_talk:Articles_for_deletion#Foo_bar|display=Foo', '[[Wikipedia talk:Articles for deletion#Foo bar|Foo]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Wikipedia_talk:Articles_for_deletion/Archive_1#Proposed_reorganization|display=Foo', '[[Wikipedia talk:Articles for deletion/Archive 1#Proposed reorganization|Foo]]' },
            { 'Banana#Etymology|display=Foo', '[[Banana#Etymology|Foo]]' },
            { 'English_language#Classification_and_related_languages|display=Foo', '[[English language#Classification and related languages|Foo]]' },
            { 'Module:UnitTests#preprocess_equals_many|display=Foo', '[[Module:UnitTests#preprocess equals many|Foo]]' },
            { 'Wikipedia_talk:Articles_for_deletion#Foo_bar|display=Foo', '[[Wikipedia talk:Articles for deletion#Foo bar|Foo]]' },
            { 'Wikipedia_talk:Articles_for_deletion/Archive_1#Proposed_reorganization|display=Foo', '[[Wikipedia talk:Articles for deletion/Archive 1#Proposed reorganization|Foo]]' },
            -- display w/ no colon trick
            { 'https://en.wikipedia.org/wiki/Category:Wikipedians|colontrick=no|display=Foo', '[[Category:Wikipedians|Foo]]' },
            { 'https://en.wikipedia.org/wiki/File:Example.png|colontrick=no|display=Foo', '[[File:Example.png|Foo]]' },
            { 'https://en.wikipedia.org/wiki/Image:Example.png|colontrick=no|display=Foo', '[[Image:Example.png|Foo]]' },
            { 'https://en.wikipedia.org/wiki/Wikipedia_talk:Articles_for_deletion|colontrick=no|display=Foo', '[[Wikipedia talk:Articles for deletion|Foo]]' },
            { 'https://es.wikipedia.org/wiki/Milord_%28tratamiento%29|colontrick=no|display=Foo', '[[es:Milord (tratamiento)|Foo]]' },
            { 'https://es.wikipedia.org/wiki/Wikipedia:Cartelera_de_acontecimientos|colontrick=no|display=Foo', '[[es:Wikipedia:Cartelera de acontecimientos|Foo]]' },
            -- no section
            { 'https://en.wikipedia.org/wiki/Banana|section=no', '[[Banana]]' },
            { 'https://en.wikipedia.org/wiki/English_language|section=no', '[[English language]]' },
            { 'https://en.wikipedia.org/wiki/Module:UnitTests|section=no', '[[Module:UnitTests]]' },
            { 'https://en.wikipedia.org/wiki/Wikipedia_talk:Articles_for_deletion|section=no', '[[Wikipedia talk:Articles for deletion]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Banana|section=no', '[[Banana]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}English_language|section=no', '[[English language]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Module:UnitTests|section=no', '[[Module:UnitTests]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Wikipedia_talk:Articles_for_deletion|section=no', '[[Wikipedia talk:Articles for deletion]]' },
            { 'Banana|section=no', '[[Banana]]' },
            { 'English_language|section=no', '[[English language]]' },
            { 'Module:UnitTests|section=no', '[[Module:UnitTests]]' },
            { 'Wikipedia_talk:Articles_for_deletion|section=no', '[[Wikipedia talk:Articles for deletion]]' },
            { 'https://en.wikipedia.org/wiki/Banana#Etymology|section=no', '[[Banana]]' },
            { 'https://en.wikipedia.org/wiki/English_language#Classification_and_related_languages|section=no', '[[English language]]' },
            { 'https://en.wikipedia.org/wiki/Module:UnitTests#preprocess_equals_many|section=no', '[[Module:UnitTests]]' },
            { 'https://en.wikipedia.org/wiki/Wikipedia_talk:Articles_for_deletion#Foo_bar|section=no', '[[Wikipedia talk:Articles for deletion]]' },
            { 'https://en.wikipedia.org/wiki/Wikipedia_talk:Articles_for_deletion/Archive_1#Proposed_reorganization|section=no', '[[Wikipedia talk:Articles for deletion/Archive 1]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Banana#Etymology|section=no', '[[Banana]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}English_language#Classification_and_related_languages|section=no', '[[English language]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Module:UnitTests#preprocess_equals_many|section=no', '[[Module:UnitTests]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Wikipedia_talk:Articles_for_deletion#Foo_bar|section=no', '[[Wikipedia talk:Articles for deletion]]' },
            { 'https://en.wikipedia.org/w/index.php?title{{=}}Wikipedia_talk:Articles_for_deletion/Archive_1#Proposed_reorganization|section=no', '[[Wikipedia talk:Articles for deletion/Archive 1]]' },
            { 'Banana#Etymology|section=no', '[[Banana]]' },
            { 'English_language#Classification_and_related_languages|section=no', '[[English language]]' },
            { 'Module:UnitTests#preprocess_equals_many|section=no', '[[Module:UnitTests]]' },
            { 'Wikipedia_talk:Articles_for_deletion#Foo_bar|section=no', '[[Wikipedia talk:Articles for deletion]]' },
            { 'Wikipedia_talk:Articles_for_deletion/Archive_1#Proposed_reorganization|section=no', '[[Wikipedia talk:Articles for deletion/Archive 1]]' },
            -- funky characters
            { 'https://en.wikipedia.org/wiki/Wikipedia:Village_pump_%28policy%29/Archive_102#Using_.7B.7BComment.7D.7D_on_articles', '[[Wikipedia:Village pump (policy)/Archive 102#Using %7B%7BComment%7D%7D on articles]]' },
            { 'https://es.wikivoyage.org/wiki/Bogot%C3%A1#En_avi.C3.B3n', '[[voy:es:Bogotá#En avión]]' },
            { 'https://ja.wikipedia.org/wiki/%E6%BC%A2%E5%AD%97', '[[:ja:漢字]]' },
            -- identical page and display
            { 'https://en.wikipedia.org/wiki/Banana|Banana', '[[Banana]]' },
            { 'https://en.wikipedia.org/wiki/Banana|banana', '[[banana]]' },
            { 'https://en.wikipedia.org/wiki/Category:Foo|Category:Foo', '[[:Category:Foo]]' }
        }
    }
}
-- </nowiki>