Jump to content

Module:Mapframe/sandbox/testcases: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
missing comma
control character supposed to be replaced with a space
Line 52: Line 52:
empty = "",
empty = "",
number = 42,
number = 42,
controlChar = "controlChar" .. string.char(0x05)
controlChar = "control" .. string.char(0x05) .. "char"
}
}
local expected = {
local expected = {
Line 60: Line 60:
trailingSpace = "trailingSapce",
trailingSpace = "trailingSapce",
number = 42,
number = 42,
controlChar = "controlChar"
controlChar = "control char"
}
}
self:assertDeepEquals(expected, mapframeModule.trimArgs(args))
self:assertDeepEquals(expected, mapframeModule.trimArgs(args))

Revision as of 04:25, 25 March 2020

-- 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 = "control" .. string.char(0x05) .. "char"
	}
	local expected = {
		foo = "foo",
		spaced = "spaced",
		leadingSpace = "leading space",
		trailingSpace = "trailingSapce",
		number = 42,
		controlChar = "control char"
	}
    self:assertDeepEquals(expected, mapframeModule.trimArgs(args))
end

return suite