Module:String/testcases
Appearance
From mediawiki.org
-- Unit tests for [[Module:String]]. Click talk page to run tests. localp=require('Module:UnitTests') functionp:test_len() self:preprocess_equals_many('{{#invoke:String|len|','}}',{ {' foo ','5'}, {'s= foo ','3'}, {'','0'}, {'s=','0'}, {' ','3'}, {'最近の更新','5'}, }) end functionp:test_replace() self:preprocess_equals_many('{{#invoke:String|replace|','}}',{ {'1.1.1.1|.|/','1/1/1/1'}, {'alpha (beta)| (| gamma (','alpha gamma (beta)'}, {'Dog (cat)|%s%(.*%)||plain=false','Dog'}, }) end functionp:test_match() self:preprocess_equals_many('{{#invoke:String|match|','}}',{ {'dog (cat)|%((%a-)%)','cat'}, {'dog (cat) (canary) (fish)|%((%a-)%)||-1','fish'}, {'dog (cat) (canary) (fish)|%((%a-)%)||2','canary'}, {'dog (cat) (canary) (fish)|%((%a-)%)|6|1','canary'}, {'dog (cat) (canary) (fish)|%((%a-)%)|6|2','fish'}, {'dog (cat)|%((%a-)%)||2|no_category=true','<strong class="error">String Module Error: Match not found</strong>'}, {'dog (cat)|%((%a-)%)||2|ignore_errors=true',''}, }) end functionp:test_match() self:preprocess_equals_many('{{#invoke:String|match|','}}',{ {'dog (cat)|%((%a-)%)','cat'}, {'dog (cat) (canary) (fish)|%((%a-)%)||-1','fish'}, {'dog (cat) (canary) (fish)|%((%a-)%)||2','canary'}, {'dog (cat) (canary) (fish)|%((%a-)%)|6|1','canary'}, {'dog (cat) (canary) (fish)|%((%a-)%)|6|2','fish'}, {'dog (cat)|%((%a-)%)||2|no_category=true','<strong class="error">String Module Error: Match not found</strong>'}, {'dog (cat)|%((%a-)%)||2|ignore_errors=true',''}, }) end functionp:test_find() self:preprocess_equals_many('{{#invoke:String|find|','}}',{ {'','0'}, {'source=','0'}, {'source=|target=','0'}, {'source=|target=Bob','0'}, {'Bob|Joe','0'}, {'Bob|b','3'}, {'Bob Joe|oe','6'}, {'source= Bob |o','2'}, {' Bob |o','3'}, {'높지만 급격히|만','3'}, {'source=BAAAB|target=%w|plain=false','1'}, {'source=BAAAB|target=%w|start=3|plain=false','3'}, {'source=BAAAB|target=(%w)%1|plain=false','2'}, }) end functionp:test_rep() self:preprocess_equals_many('{{#invoke:String|rep|','}}',{ {'abc|1','abc'}, {'a b|7','a ba ba ba ba ba ba b'}, {'bla|glug|no_category=true','<strong class="error">String Module Error: function rep expects a number as second parameter, received "glug"</strong>'}, {'bla|glug|ignore_errors=true',''}, {'àèò|3','àèòàèòàèò'} }) end returnp