Module:Urltowiki/testcases: Difference between revisions

Content deleted Content added
parameter tests
Clean up for module rename
 
(8 intermediate revisions by 2 users not shown)
Line 1:
-- Unit tests for [[Module:UrlToWikiUrltowiki]]. Click talk page to run tests.
local p = require('Module:UnitTests')
 
function p:test_simple()
self:preprocess_equals_many('{{#invoke:UrlToWikiUrltowiki/sandbox|urlToWiki|', '}}', {
{'https://en.wikipedia.org/wiki/Banana', '[[Banana]]'},
{'https://en.wikipedia.org/wiki/English_language', '[[English language]]'},
Line 12:
 
function p:test_index_php()
self:preprocess_equals_many('{{#invoke:UrlToWikiUrltowiki/sandbox|urlToWiki|', '}}', {
{'1=https://en.wikipedia.org/w/index.php?title=Banana', '[[Banana]]'},
{'1=https://en.wikipedia.org/w/index.php?title=English_language', '[[English language]]'},
{'1=https://en.wikipedia.org/w/index.php?title=Module:UnitTests', '[[Module:UnitTests]]'},
{'1=https://en.wikipedia.org/w/index.php?title=Wikipedia_talk:Articles_for_deletion', '[[Wikipedia talk:Articles for deletion]]'},
})
end
 
function p:test_url_parameter()
self:preprocess_equals_many('{{#invoke:Urltowiki/sandbox|urlToWiki|', '}}', {
{'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]]'},
})
end
 
function p:test_partial_urls()
self:preprocess_equals_many('{{#invoke:UrlToWikiUrltowiki/sandbox|urlToWiki|', '}}', {
{'Banana', '[[Banana]]'},
{'English_language', '[[English language]]'},
Line 30 ⟶ 39:
 
function p:test_fragments()
self:preprocess_equals_many('{{#invoke:UrlToWikiUrltowiki/sandbox|urlToWiki|', '}}', {
{'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]]'},
Line 50 ⟶ 59:
 
function p:test_random_sites()
self:preprocess_equals_many('{{#invoke:UrlToWikiUrltowiki/sandbox|urlToWiki|', '}}', {
{'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'},
{'1=http://www.youtube.com/watch?v=AxTiaInrLW4', 'http://www.youtube.com/watch?v=AxTiaInrLW4'},
Line 58 ⟶ 67:
 
function p:test_actions()
self:preprocess_equals_many('{{#invoke:UrlToWikiUrltowiki/sandbox|urlToWiki|', '}}', {
{'1=https://en.wikipedia.org/w/index.php?title=Wikipedia%3AArticles_for_deletion&action=history', '[[Wikipedia:Articles for deletion]]'},
{'1=https://en.wikipedia.org/w/index.php?title=Wikipedia:Articles_for_deletion&offset=20121106111840&action=history', '[[Wikipedia:Articles for deletion]]'},
Line 66 ⟶ 75:
 
function p:test_interwikis()
self:preprocess_equals_many('{{#invoke:UrlToWikiUrltowiki/sandbox|urlToWiki|', '}}', {
{'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]]'},
Line 75 ⟶ 84:
 
function p:test_colon_trick()
self:preprocess_equals_many('{{#invoke:UrlToWikiUrltowiki/sandbox|urlToWiki|', '}}', {
{'https://en.wikipedia.org/wiki/Category:Wikipedians', '[[:Category:Wikipedians]]'},
{'https://en.wikipedia.org/wiki/File:Example.png', '[[:File:Example.png]]'},
Line 86 ⟶ 95:
 
function p:test_no_link()
self:preprocess_equals_many('{{#invoke:UrlToWikiUrltowiki/sandbox|urlToWiki|', '}}', {
{'https://en.wikipedia.org/wiki/Banana|link=no', 'Banana'},
{'https://en.wikipedia.org/wiki/English_language|link=no', 'English language'},
Line 113 ⟶ 122:
 
function p:test_no_colon_trick()
self:preprocess_equals_many('{{#invoke:UrlToWikiUrltowiki/sandbox|urlToWiki|', '}}', {
{'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 talkArticlestalk: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]]'},
Line 124 ⟶ 133:
 
function p:test_display()
self:preprocess_equals_many('{{#invoke:UrlToWikiUrltowiki/sandbox|urlToWiki|', '}}', {
{'https://en.wikipedia.org/wiki/Banana|display=Foo', '[[Banana|Foo]]'},
{'https://en.wikipedia.org/wiki/English_language|display=Foo', '[[English language|Foo]]'},
Line 156 ⟶ 165:
 
function p:test_display_no_colon_trick()
self:preprocess_equals_many('{{#invoke:UrlToWikiUrltowiki/sandbox|urlToWiki|', '}}', {
{'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 talkArticlestalk: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]]'},
Line 167 ⟶ 176:
 
function p:test_no_section()
self:preprocess_equals_many('{{#invoke:UrlToWikiUrltowiki/sandbox|urlToWiki|', '}}', {
{'https://en.wikipedia.org/wiki/Banana|section=no', '[[Banana]]'},
{'https://en.wikipedia.org/wiki/English_language|section=no', '[[English language]]'},
Line 195 ⟶ 204:
{'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]]'},
})
end
 
function p:test_funky_characters()
self:preprocess_equals_many('{{#invoke:Urltowiki/sandbox|urlToWiki|', '}}', {
{'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:漢字]]'},
})
end
 
function p:test_identical_page_and_display()
self:preprocess_equals_many('{{#invoke:Urltowiki/sandbox|urlToWiki|', '}}', {
{'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]]'},
})
end