Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

Jump to content

Module:Suppress categories/testcases

From Wikipedia, the free encyclopedia
-- Unit tests for [[Module:Suppress categories]]. Click talk page to run tests.
local p = require('Module:UnitTests')

function p:test_main()
    self:preprocess_equals_many('{{#invoke:Suppress categories|main|', '}}', {
        {'foo', 'foo'},
        {'foo[[Category:Some category]]', 'foo'},
        {'foo[[Category:Some category]]bar[[Category:Another category]]', 'foobar'},
        {'foo{{{some_parameter|[[Category:Bar]]}}}', 'foo'},
        {'foo[[Category:Bad ca[]tegory link]]', 'foo[[Category:Bad ca[]tegory link]]'},
        {'foo[[:Category:Colon trick]]', 'foo[[:Category:Colon trick]]'},
        {'foo[[Category:Piped link|bar]]', 'foo'},
        {'foo[[Category:Piped link|ba[]r]]', 'foo'},
        {'foo[[non-category link]]', 'foo[[non-category link]]'},
        {'foo[[ Category : Some category with spaces ]]', 'foo'},
    }, {nowiki = 'yes'})
end

function p:test_nested()
    self:preprocess_equals_many('{{#invoke:Suppress categories|main|', '}}', {
        {'[[Category:Fo[[Category:Bar]]o]]', '[[Category:Fo<span style="display: none;">[[]]</span>o]]'},
        {'[[Category:Foo|b[[Category:Baz]]ar]]', '[[Category:Foo|b<span style="display: none;">[[]]</span>ar]]'},
        {'[[Category:Foo|ba[[Category:Baz|ba[[Category:Foobar|Bazbat]]m]]r]]', '[[Category:Foo|ba[[Category:Baz|ba<span style="display: none;">[[]]</span>m]]r]]'},
        {'[[Category:Foo|b[a[[Category:Baz|bam]]r]]', '[[Category:Foo|b[a<span style="display: none;">[[]]</span>r]]'}
    }, {nowiki = 'yes'})
end

return p