Module:Citation/CS1/testcases/errors
Appearance
-- Unit tests for [[Module:Citation/CS1]]. Click talk page to run tests.
local p = require('Module:UnitTests')
function p:test_web()
self:preprocess_equals_preprocess_many(
'{{cite web/new|', '}}',
'{{cite web|', '}}',
{
{ [==[ ]==] },
{ [==[ unrecognized_thing ]==] }, -- finds and then discards unrecognized_thing
{ [==[ unrecognized_thing |unrecognized_thing2 ]==] }, -- finds and then discards unrecognized_things
{ [==[ last = Last |unrecognized_thing ]==] },
{ [==[ last = Last |unrecognized_thing |unrecognized_thing2 ]==] },
{ [==[ unrecognized_parameter = unrecognized ]==] }, -- finds and then discards unrecognized parameter
{ [==[ unrecognized_parameter = unrecognized |unrecognized_parameter2 = unrecognized2 ]==] }, -- finds and then discards unrecognized parameters
{ [==[ last=Last |1=unrecognized1 ]==] },
{ [==[ last=Last |unrecognized_parameter = unrecognized |unrecognized_parameter2 = unrecognized2 ]==] },
},
{nowiki=false, templatestyles=true}
)
end
--[[--------------------------< W I K I L I N K _ I N _ U R L >------------------------------------------------
]]
function p:test_wikilink_in_url()
self:preprocess_equals_preprocess_many(
'{{cite journal/new|journal=Journal|', '}}', '{{cite journal|journal=Journal|', '}}',
{
{''}, -- no pmc, no title, no url, no title-link 0000
{'title-link=Title'}, -- title-link 0001
{'url=//example.com'}, -- url 0010
{'url=//example.com |title-link=Title'}, -- url, title-link 0011
{'title=Title'}, -- title 0100
{'title=Title |title-link=Title'}, -- title, title-link 0101
{'title=Title |url=//example.com'}, -- title, url 0110
{'title=Title |url=//example.com |title-link=Title'}, -- title, url, title-link 0111
{'pmc=12345'}, -- pmc 1000
{'pmc=12345 |title-link=Title'}, -- pmc, title-link 1001
{'pmc=12345 |url=//example.com'}, -- pmc, url 1010
{'pmc=12345 |url=//example.com |title-link=Title'}, -- pmc, url, title-link 1011
{'pmc=12345 |title=Title'}, -- pmc, title 1100
{'pmc=12345 |title=Title |title-link=Title'}, -- pmc, title, title-link 1101
{'pmc=12345 |title=Title |url=//example.com'}, -- pmc, title, url 1110
{'pmc=12345 |title=Title |url=//example.com |title-link=Title'}, -- pmc, title, url, title-link 1111
},
{nowiki=false, templatestyles=true}
)
end
--[[--------------------------< T E S T _ V A U T H O R S >----------------------------------------------------
]]
function p:test_vauthors()
self:preprocess_equals_preprocess_many(
'{{cite book/new|', '}}', '{{cite book|', '}}',
{
{'title=Title |vauthors=Black ABC'}, -- too many initials
{'title=Title |vauthors=Black A-B'}, -- hyphenated initials
{'title=Title |vauthors=Black AB II'}, -- invalid generational suffix
{'title=Title |vauthors=Black AB 3d'}, -- invalid generational suffix
{'title=Title |vauthors=Black, AB, Brown, CD'}, -- improper puncutation
{'title=Title |vauthors=Black AB; Brown CD'}, -- improper puncutation
{'title=Title |vauthors=Black AB, Brown CD,'}, -- improper puncutation
{'title=Title |vauthors=Black AB Brown CD'}, -- missing comma
{'title=Title |vauthors=Black A B'}, -- spaced initials
},
{nowiki=false, templatestyles=true}
)
end
return p