Module:Mapframe/sandbox/testcases
Appearance
![]() | This is the test cases page for the module Module:Mapframe/sandbox. Results of the test cases. |
-- Unit tests for [[Module:Example]]. Click talk page to run tests.
local mapframeModule = require('Module:Mapframe/sandbox').test -- the module to be tested
local ScribuntoUnit = require('Module:ScribuntoUnit')
local suite = ScribuntoUnit:new()
function suite:testGetParameterValue()
-- @params {Table}args, {String}param_id, [{Number}suffix]
-- @returns {String|nil}
local args = {
display = "foo",
type = "bar",
type2 = "bar2",
}
self:assertEquals(
"foo", mapframeModule.getParameterValue(args, "display"),
"arg without suffix")
self:assertEquals(
"bar", mapframeModule.getParameterValue(args, "type"),
"arg without suffix (where there is also a same-named arg with a suffix)")
self:assertEquals(
"bar2", mapframeModule.getParameterValue(args, "type", 2),
"arg with suffix")
self:assertEquals(
nil, mapframeModule.getParameterValue(args, "type", 3),
"arg with suffix not present (same-named arg with different suffix is present)")
self:assertEquals(
nil, mapframeModule.getParameterValue(args, "display", 3)
"arg with suffix not present (same-named arg without any suffix is present)")
self:assertEquals(
nil, mapframeModule.getParameterValue(args, "id"),
"arg not present")
self:assertEquals(
nil, mapframeModule.getParameterValue(args, "id", 3),
"-- arg with suffix not present (no same-named arg with or without any suffix)")
end
function suite:testTrimArgs()
-- @param {Table<String, String|Number>}argsTable
-- @returns {Table<String, String|Number>}
local args = {
foo = "foo",
spaced = " spaced ",
leadingSpace = " leading space",
trailingSpace = "trailingSapce ",
empty = "",
number = 42,
controlChar = "controlChar" .. string.char(0x05)
}
local expected = {
foo = "foo",
spaced = "spaced",
leadingSpace = "leading space",
trailingSpace = "trailingSapce",
number = 42,
controlChar = "controlChar"
}
self:assertDeepEquals(expected, mapframeModule.trimArgs(args))
end
return suite