Module:Template test case: Difference between revisions

    m (white is harder to see; so I changed it to #90a8ee)
    (add renderCells(), needs testing)
    Line 181: Line 181:
    tablerows = 'renderRows',
    tablerows = 'renderRows',
    inline = 'renderInline',
    inline = 'renderInline',
    cells = 'renderCells',
    default = 'renderDefault'
    default = 'renderDefault'
    }
    }
    Line 558: Line 559:
    end
    end
    return table.concat(ret, '\n')
    return table.concat(ret, '\n')
    end
    function TestCase:renderCells()
    local root = mw.html.create()
    local dataRow = root:tag('tr')
    dataRow
    :css('vertical-align', 'top')
    :addClass(self.options.class)
    :cssText(self.options.style)
    -- Row header
    if self.options.rowheader then
    dataRow:tag('th')
    :attr('scope', 'row')
    :newline()
    :wikitext(self.options.rowheader or self:message('row-header'))
    end
    -- Caption
    if self.options.showcaption then
    dataRow:tag('th')
    :attr('scope', 'row')
    :newline()
    :wikitext(self.options.caption or self:message('columns-header'))
    end
    -- Show code
    if self.options.showcode then
    dataRow:tag('td')
    :newline()
    :wikitext(self:getInvocation('code'))
    end
    -- Template output
    for i, obj in ipairs(self.templates) do
    if self.options.output == 'nowiki+' then
    dataRow:tag('td')
    :newline()
    :wikitext(self.options.before)
    :wikitext(self:getTemplateOutput(obj))
    :wikitext(self.options.after)
    :wikitext('<pre style="white-space: pre-wrap;">')
    :wikitext(mw.text.nowiki(self.options.before or ""))
    :wikitext(mw.text.nowiki(self:getTemplateOutput(obj)))
    :wikitext(mw.text.nowiki(self.options.after or ""))
    :wikitext('</pre>')
    elseif self.options.output == 'nowiki' then
    dataRow:tag('td')
    :newline()
    :wikitext(mw.text.nowiki(self.options.before or ""))
    :wikitext(mw.text.nowiki(self:getTemplateOutput(obj)))
    :wikitext(mw.text.nowiki(self.options.after or ""))
    else
    dataRow:tag('td')
    :newline()
    :wikitext(self.options.before)
    :wikitext(self:getTemplateOutput(obj))
    :wikitext(self.options.after)
    end
    end
    return tostring(root)
    end
    end