-- Unit tests for [[Module:{{ROOTPAGENAME}}]]. Click talk page to run tests.
local p = require('Module:UnitTests')
function p:test_sentence()
self:preprocess_equals_sandbox_many('{{#invoke:String2', 'sentence', {
{'*teSt', '\n*Test'},
{'[[tEst]]', '[[Test]]'},
{'[[test|pipeTest]]', '[[test|Pipetest]]'},
{'32ND', '32nd'},
{'3 ×', '3 ×'},
{'<li>TEST</li>', '<li>Test</li>'},
{'1900 – 2000', '1900 – 2000'},
{'éclair', 'Éclair'},
{'Äpfel', 'Äpfel'},
-- this requires options.stripmarker to be implemented for preprocess_equals_sandbox_many
{'teXT <nowiki>TeXT</nowiki>', 'Text <nowiki>TeXT</nowiki>'},
})
end
function p:test_ucfirst()
self:preprocess_equals_sandbox_many('{{#invoke:String2', 'ucfirst', {
{'*test', '\n*Test'},
{'[[test]]', '[[Test]]'},
{'[[test|pipetest]]', '[[test|Pipetest]]'},
{'32nd', '32nd'},
{'3 ×', '3 ×'},
{'<li>test</li>', '<li>Test</li>'},
{'1900 – 2000', '1900 – 2000'},
{'éclair', 'Éclair'},
{'äpfel', 'Äpfel'},
{'[[endocrinology]], [[infectious disease (medical specialty)|infectious disease]]', '[[Endocrinology]], [[infectious disease (medical specialty)|infectious disease]]'},
{'[//example.com ext link test]', '[//example.com ext link test]'},
})
end
function p:test_matchAny()
self:preprocess_equals_sandbox_many('{{#invoke:String2','matchAny', {
{'123|abc|source=adc 123', '1'},
{'123|abc|source=adc 124', ''},
{'123|abc|source=abc 124', '2'},
},{nowiki=1})
end
--[[ function p:test_sentence()
self:preprocess_equals_preprocess('{{#invoke:String2|sentence|ThE RaIN In Spain falls <nowiki>mainly</nowiki> on THE PLANE.}}',
'The rain in spain falls <nowiki>mainly</nowiki> on the plane.',
{ stripmarker = true })
self:preprocess_equals_preprocess('{{#invoke:String2|sentence|ThE RaIN In Spain <ref>falls</ref> mainly on THE PLANE.}}',
'The rain in spain <ref>falls</ref> mainly on the plane.', { stripmarker = true })
end ]]--
return p