Module:Template test case: Difference between revisions
move arg-trimming code to the TableInvocation class
(add nowiki exports and finish the NowikiInvocation class) |
(move arg-trimming code to the TableInvocation class) |
||
Line 138: | Line 138: | ||
local optionKey = type(k) == 'string' and k:match('^_(.*)$') | local optionKey = type(k) == 'string' and k:match('^_(.*)$') | ||
if optionKey then | if optionKey then | ||
rawOptions[optionKey] = v | if type(v) == 'string' then | ||
v = mw.text.trim(v) | |||
end | |||
if v ~= '' then | |||
rawOptions[optionKey] = v | |||
end | |||
else | else | ||
invokeArgs[k] = v | invokeArgs[k] = v | ||
Line 209: | Line 214: | ||
return require('Module:Arguments').getArgs(frame, { | return require('Module:Arguments').getArgs(frame, { | ||
wrappers = wrappers, | wrappers = wrappers, | ||
trim = false, | |||
removeBlanks = false | |||
}) | }) | ||
end | end | ||
Line 230: | Line 227: | ||
function p.table(frame) | function p.table(frame) | ||
return p._table(getTableArgs(frame, 'Template:Test case')) | return p._table(getTableArgs(frame, 'Template:Test case from arguments')) | ||
end | end | ||
Line 254: | Line 251: | ||
function p.nowiki(frame) | function p.nowiki(frame) | ||
local args = require('Module:Arguments').getArgs(frame, { | local args = require('Module:Arguments').getArgs(frame, { | ||
wrappers = 'Template:Test case' | wrappers = 'Template:Test case from invocation' | ||
}) | }) | ||
return p._nowiki(args) | return p._nowiki(args) |