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
--[[--------------------------< 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