Difference between revisions of "Module:Citation/CS1/testcases2"

From blackwiki
Jump to navigation Jump to search
test>Trappist the monk
test>Trappist the monk
Line 20: Line 20:
 
)
 
)
 
end
 
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
 +
 +
  
  

Revision as of 13:45, 10 June 2020

Documentation for this module may be created at Module:Citation/CS1/testcases2/doc

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