Editing Module:Template test case
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 94: | Line 94: | ||
function Template:getFullPage() | function Template:getFullPage() | ||
if | if self.template then | ||
local strippedTemplate, hasColon = self.template:gsub('^:', '', 1) | local strippedTemplate, hasColon = self.template:gsub('^:', '', 1) | ||
hasColon = hasColon > 0 | hasColon = hasColon > 0 | ||
Line 110: | Line 106: | ||
return mw.site.namespaces[10].name .. ':' .. strippedTemplate | return mw.site.namespaces[10].name .. ':' .. strippedTemplate | ||
end | end | ||
else | |||
return self.title.prefixedText | |||
end | end | ||
end | end | ||
Line 146: | Line 144: | ||
if format == 'code' then | if format == 'code' then | ||
invocation = '<code>' .. mw.text.nowiki(invocation) .. '</code>' | invocation = '<code>' .. mw.text.nowiki(invocation) .. '</code>' | ||
elseif format == 'plain' then | elseif format == 'plain' then | ||
invocation = mw.text.nowiki(invocation) | invocation = mw.text.nowiki(invocation) | ||
Line 160: | Line 156: | ||
function Template:getOutput() | function Template:getOutput() | ||
return self._invocation:getOutput{ | |||
template = self:getName(), | template = self:getName(), | ||
requireMagicWord = self.requireMagicWord, | requireMagicWord = self.requireMagicWord, | ||
} | } | ||
end | end | ||
Line 183: | Line 177: | ||
tablerows = 'renderRows', | tablerows = 'renderRows', | ||
inline = 'renderInline', | inline = 'renderInline', | ||
default = 'renderDefault' | default = 'renderDefault' | ||
} | } | ||
Line 213: | Line 206: | ||
generalOptions.showcaption = yesno(generalOptions.showcaption) ~= false | generalOptions.showcaption = yesno(generalOptions.showcaption) ~= false | ||
generalOptions.collapsible = yesno(generalOptions.collapsible) | generalOptions.collapsible = yesno(generalOptions.collapsible) | ||
obj.options = generalOptions | obj.options = generalOptions | ||
Line 341: | Line 332: | ||
function TestCase:makeCollapsible(s) | function TestCase:makeCollapsible(s) | ||
local isEqual = self:templateOutputIsEqual() | local isEqual = self:templateOutputIsEqual() | ||
local root = mw.html.create('table') | local root = mw.html.create('table') | ||
root | root | ||
:addClass('mw-collapsible') | :addClass('mw-collapsible') | ||
:addClass(isEqual and 'mw-collapsed' or nil) | |||
:css('background-color', 'transparent') | :css('background-color', 'transparent') | ||
:css('width', '100%') | :css('width', '100%') | ||
Line 387: | Line 343: | ||
:tag('th') | :tag('th') | ||
:css('background-color', isEqual and 'lightgreen' or 'yellow') | :css('background-color', isEqual and 'lightgreen' or 'yellow') | ||
:wikitext(title) | :wikitext(self.options.title or self.templates[1]:makeHeader()) | ||
:done() | :done() | ||
:done() | :done() | ||
Line 395: | Line 351: | ||
:wikitext(s) | :wikitext(s) | ||
:newline() | :newline() | ||
return tostring(root) | return tostring(root) | ||
end | end | ||
Line 457: | Line 412: | ||
:wikitext(self.options.after) | :wikitext(self.options.after) | ||
:wikitext('<pre style="white-space: pre-wrap;">') | :wikitext('<pre style="white-space: pre-wrap;">') | ||
:wikitext(mw.text.nowiki(self:getTemplateOutput(obj))) | :wikitext(mw.text.nowiki(self:getTemplateOutput(obj))) | ||
:wikitext('</pre>') | :wikitext('</pre>') | ||
elseif self.options.output == 'nowiki' then | elseif self.options.output == 'nowiki' then | ||
dataRow:tag('td') | dataRow:tag('td') | ||
:newline() | :newline() | ||
:wikitext(mw.text.nowiki(self:getTemplateOutput(obj))) | :wikitext(mw.text.nowiki(self:getTemplateOutput(obj))) | ||
else | else | ||
dataRow:tag('td') | dataRow:tag('td') | ||
Line 549: | Line 500: | ||
for i, obj in ipairs(self.templates) do | for i, obj in ipairs(self.templates) do | ||
local line = {} | local line = {} | ||
line[#line + 1] = | line[#line + 1] = '* ' | ||
if self.options.showcode then | if self.options.showcode then | ||
line[#line + 1] = obj:getInvocation('code') | line[#line + 1] = obj:getInvocation('code') | ||
Line 570: | Line 521: | ||
if self.options.addline then | if self.options.addline then | ||
local line = {} | local line = {} | ||
line[#line + 1] = | line[#line + 1] = '* ' | ||
line[#line + 1] = self.options.addline | line[#line + 1] = self.options.addline | ||
ret[#ret + 1] = table.concat(line) | ret[#ret + 1] = table.concat(line) | ||
end | end | ||
return table.concat(ret, '\n') | return table.concat(ret, '\n') | ||
end | end | ||
Line 745: | Line 634: | ||
function TableInvocation:getOutput(options) | function TableInvocation:getOutput(options) | ||
return mw.getCurrentFrame():expandTemplate{ | return mw.getCurrentFrame():expandTemplate{ | ||
title = options.template, | title = options.template, |