Module:User:DePiep/sandbox/testcases
< Module:User:DePiep/sandbox
Jump to navigation
Jump to search
Revision as of 14:04, 25 March 2013 by blackwiki>DePiep
Documentation for this module may be created at Module:User:DePiep/sandbox/testcases/doc
-- Unit tests.
local p = require('Module:UnitTests')
function p:test_basic()
-- basic
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij}}', '000')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|||}}', '000')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|||7}}', '001')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij||4|}}', '010')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij||4|7}}', '011')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|2||}}', '100')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|2||7}}', '101')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|2|4|}}', '110')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|2|4|5}}', '111')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|2|4|7}}', '111 err')
end
function p:test_borders()
-- jj over length
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|||13}}', '001')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij||4|13}}', '011')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|2||13}}', '101')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|10|4|13}}', '111')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|8|4|13}}', '111 err')
end
function p:test_negatives()
-- j neg
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|||-7}}', '001')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij||3|-7}}', '011')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|2||-7}}', '101')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|3|4|-5}}', '111')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|2|3|-7}}', '111')
-- i neg
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|-2||}}', '100')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|-2||7}}', '101')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|-2|4|}}', '110')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|-2|4|5}}', '111')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|-2|4|7}}', '111')
-- negative length substr
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij||-4|}}', '010')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij||-4|7}}', '011')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij||-3|7}}', '011')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|2|-4|}}', '110')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij||-4|8}}', '011')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|2|-4|7}}', '111')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|10|-4|7}}', '111')
end
function p:test_blanks()
--blank
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss||2||7}}', '<blank>')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss||2|0|7}}', '<blank>')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|2|0|7}}', '<blank>')
end
function p:test_index_0()
-- i, j =0 error
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|0||7}}', '0 index')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|2||0}}', '0 index')
self:preprocess_equals('{{#invoke:User:DePiep/sandbox|ss|abcdefghij|0||0}}', '0 index')
end
return p