Module:Sandbox/Mr. Stradivarius/Check ISO 639-1/testcases
Appearance
![]() | This is the test cases page for the module Module:Sandbox/Mr. Stradivarius/Check ISO 639-1. Results of the test cases. |
-- Unit tests for [[Module:Check ISO 639-1]]. Click talk page to run tests.
local p = require('Module:UnitTests')
local isoModule = require('Module:Check ISO 639-1') -- the module to be tested
local checkISO = isoModule.main
local ScribuntoUnit = require('Module:ScribuntoUnit')
local suite = ScribuntoUnit:new()
function suite:testMain()
self:assertEquals('en', checkISO{'en'})
self:assertEquals('en', checkISO{'EN'})
self:assertEquals('en', checkISO{' en '})
self:assertEquals('en', checkISO{' EN '})
self:assertEquals('en', checkISO{'en', nocat='true'})
self:assertEquals('en', checkISO{'en', nocat='yes'})
self:assertEquals('en', checkISO{'en', nocat='y'})
self:assertEquals('en', checkISO{'en', nocat='1'})
self:assertEquals('en', checkISO{'en', nocat=' yes '})
self:assertEquals('en', checkISO{'en', nocat=true})
self:assertEquals('<strong class="error">Error: "eng" is not a valid [[List of ISO 639-1 codes|ISO 639-1 code]]</strong>[[Category:Pages with invalid ISO 639-1 language codes|eng]]', checkISO{'eng'})
self:assertEquals('<strong class="error">Error: "eng" is not a valid [[List of ISO 639-1 codes|ISO 639-1 code]]</strong>[[Category:Pages with invalid ISO 639-1 language codes|eng]]', checkISO{' eng '})
self:assertEquals('<strong class="error">Error: "English" is not a valid [[List of ISO 639-1 codes|ISO 639-1 code]]</strong>[[Category:Pages with invalid ISO 639-1 language codes|English]]', checkISO{'English'})
self:assertEquals('<strong class="error">Error: "English" is not a valid [[List of ISO 639-1 codes|ISO 639-1 code]]</strong>', checkISO{'English', nocat='true'})
self:assertEquals('<strong class="error">Error: "English" is not a valid [[List of ISO 639-1 codes|ISO 639-1 code]]</strong>', checkISO{'English', nocat='yes'})
self:assertEquals('<strong class="error">Error: "English" is not a valid [[List of ISO 639-1 codes|ISO 639-1 code]]</strong>', checkISO{'English', nocat='y'})
self:assertEquals('<strong class="error">Error: "English" is not a valid [[List of ISO 639-1 codes|ISO 639-1 code]]</strong>', checkISO{'English', nocat='1'})
self:assertEquals('<strong class="error">Error: "English" is not a valid [[List of ISO 639-1 codes|ISO 639-1 code]]</strong>', checkISO{'English', nocat=' yes '})
self:assertEquals('<strong class="error">Error: "English" is not a valid [[List of ISO 639-1 codes|ISO 639-1 code]]</strong>', checkISO{'English', nocat=true})
self:assertEquals('<strong class="error">Error: "English" is not a valid [[List of ISO 639-1 codes|ISO 639-1 code]]</strong>[[Category:Pages with invalid ISO 639-1 language codes|English]]', checkISO{'English', nocat='false'})
self:assertEquals('', checkISO{''})
self:assertEquals('', checkISO{' '})
self:assertEquals('', checkISO{{}})
self:assertEquals('', checkISO{true})
self:assertEquals('', checkISO{nil})
end
local codes = {
'ab', 'af', 'an', 'ar', 'as', 'az', 'be', 'bg', 'bn', 'bo', 'br', 'bs', 'ca', 'ce', 'co', 'cs', 'cu', 'cy', 'da', 'de',
'el', 'en', 'eo', 'es', 'et', 'eu', 'fa', 'fi', 'fj', 'fo', 'fr', 'fy', 'ga', 'gd', 'gl', 'gv', 'he', 'hi', 'hr', 'ht',
'hu', 'hy', 'id', 'is', 'it', 'ja', 'jv', 'ka', 'kg', 'ko', 'ku', 'kw', 'ky', 'la', 'lb', 'li', 'ln', 'lt', 'lv', 'mg',
'mk', 'mn', 'mo', 'ms', 'mt', 'my', 'nb', 'ne', 'nl', 'nn', 'no', 'oc', 'pl', 'pt', 'rm', 'ro', 'ru', 'sc', 'se', 'sk',
'sl', 'so', 'sq', 'sr', 'sv', 'sw', 'tk', 'tr', 'ty', 'uk', 'ur', 'uz', 'vi', 'vo', 'yi', 'zh'
}
function suite.getAllCodeOutput()
local ret = {}
for _, code in ipairs(codes) do
ret[#ret + 1] = 'code: "' .. code .. '"; result: "' .. checkISO{code, nocat=true} .. '"'
end
return '# ' .. table.concat(ret, '\n# ')
end
return suite