Jump to content

Module:List/testcases

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Mr. Stradivarius (talk | contribs) at 14:16, 24 November 2013 (add unbulleted tests). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
-- Unit tests for [[Module:List]]. Click talk page to run tests.
local p = require('Module:UnitTests')

function p:test_bulleted()
    self:preprocess_equals_many('{{#invoke:List|bulleted', '}}', {
		{'', ''},
		{'|foo', '<div><ul><li>foo</li></ul></div>'},
		{'|foo|bar', '<div><ul><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|class=plainlinks', '<div class="plainlinks"><ul><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|style=font-weight: bold', '<div style="font-weight: bold;"><ul><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|list_style=font-weight: bold', '<div><ul style="font-weight: bold;"><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|item_style=font-weight: bold', '<div><ul><li style="font-weight: bold;">foo</li><li style="font-weight: bold;">bar</li></ul></div>'},
		{'|foo|bar|item_style1=font-weight: bold', '<div><ul><li style="font-weight: bold;">foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|item_style2=font-weight: bold', '<div><ul><li>foo</li><li style="font-weight: bold;">bar</li></ul></div>'},
		{'|foo|bar|ul_style=font-weight: bold', '<div><ul style="font-weight: bold;"><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|ol_style=font-weight: bold', '<div><ul style="font-weight: bold;"><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|li_style=font-weight: bold', '<div><ul><li style="font-weight: bold;">foo</li><li style="font-weight: bold;">bar</li></ul></div>'},
		{'|foo|bar|li_style1=font-weight: bold', '<div><ul><li style="font-weight: bold;">foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|li_style2=font-weight: bold', '<div><ul><li>foo</li><li style="font-weight: bold;">bar</li></ul></div>'},
		{'|foo|bar|type=i', '<div><ul type="i"><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|list_style_type=lower-greek', '<div><ul style="list-style-type:lower-greek;"><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|start=2', '<div><ul start="2"><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|indent=2', '<div><ul><li>foo</li><li>bar</li></ul></div>'},
	})
end

function p:test_unbulleted()
    self:preprocess_equals_many('{{#invoke:List|unbulleted', '}}', {
		{'', ''},
		{'|foo', '<div class="plainlist"><ul><li>foo</li></ul></div>'},
		{'|foo|bar', '<div class="plainlist"><ul><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|class=plainlinks', '<div class="plainlist plainlinks"><ul><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|style=font-weight: bold', '<div class="plainlist" style="font-weight: bold;"><ul><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|list_style=font-weight: bold', '<div class="plainlist"><ul style="font-weight: bold;"><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|item_style=font-weight: bold', '<div class="plainlist"><ul><li style="font-weight: bold;">foo</li><li style="font-weight: bold;">bar</li></ul></div>'},
		{'|foo|bar|item_style1=font-weight: bold', '<div class="plainlist"><ul><li style="font-weight: bold;">foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|item_style2=font-weight: bold', '<div class="plainlist"><ul><li>foo</li><li style="font-weight: bold;">bar</li></ul></div>'},
		{'|foo|bar|ul_style=font-weight: bold', '<div class="plainlist"><ul style="font-weight: bold;"><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|ol_style=font-weight: bold', '<div class="plainlist"><ul style="font-weight: bold;"><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|li_style=font-weight: bold', '<div class="plainlist"><ul><li style="font-weight: bold;">foo</li><li style="font-weight: bold;">bar</li></ul></div>'},
		{'|foo|bar|li_style1=font-weight: bold', '<div class="plainlist"><ul><li style="font-weight: bold;">foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|li_style2=font-weight: bold', '<div class="plainlist"><ul><li>foo</li><li style="font-weight: bold;">bar</li></ul></div>'},
		{'|foo|bar|type=i', '<div class="plainlist"><ul type="i"><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|list_style_type=lower-greek', '<div class="plainlist"><ul style="list-style-type:lower-greek;"><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|start=2', '<div class="plainlist"><ul start="2"><li>foo</li><li>bar</li></ul></div>'},
		{'|foo|bar|indent=2', '<div class="plainlist"><ul><li>foo</li><li>bar</li></ul></div>'},
	})
end

function p:test_ordered()
    self:preprocess_equals_many('{{#invoke:List|ordered', '}}', {
		{'', ''},
		{'|foo', '<div><ol><li>foo</li></ol></div>'},
		{'|foo|bar', '<div><ol><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|class=plainlinks', '<div class="plainlinks"><ol><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|style=font-weight: bold', '<div style="font-weight: bold;"><ol><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|list_style=font-weight: bold', '<div><ol style="font-weight: bold;"><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|item_style=font-weight: bold', '<div><ol><li style="font-weight: bold;">foo</li><li style="font-weight: bold;">bar</li></ol></div>'},
		{'|foo|bar|item_style1=font-weight: bold', '<div><ol><li style="font-weight: bold;">foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|item_style2=font-weight: bold', '<div><ol><li>foo</li><li style="font-weight: bold;">bar</li></ol></div>'},
		{'|foo|bar|ul_style=font-weight: bold', '<div><ol style="font-weight: bold;"><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|ol_style=font-weight: bold', '<div><ol style="font-weight: bold;"><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|li_style=font-weight: bold', '<div><ol><li style="font-weight: bold;">foo</li><li style="font-weight: bold;">bar</li></ol></div>'},
		{'|foo|bar|li_style1=font-weight: bold', '<div><ol><li style="font-weight: bold;">foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|li_style2=font-weight: bold', '<div><ol><li>foo</li><li style="font-weight: bold;">bar</li></ol></div>'},
		{'|foo|bar|type=i', '<div><ol type="i"><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|list_style_type=lower-greek', '<div><ol style="list-style-type:lower-greek;"><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|start=2', '<div><ol start="2"><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|indent=2', '<div><ol><li>foo</li><li>bar</li></ol></div>'},
	})
end

function p:test_horizontal_ordered()
    self:preprocess_equals_many('{{#invoke:List|horizontal_ordered', '}}', {
		{'', ''},
		{'|foo', '<div class="hlist" style="margin-left:0em;"><ol><li>foo</li></ol></div>'},
		{'|foo|bar', '<div class="hlist" style="margin-left:0em;"><ol><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|class=plainlinks', '<div class="hlist plainlinks" style="margin-left:0em;"><ol><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|style=font-weight: bold', '<div class="hlist" style="margin-left:0em;font-weight: bold;"><ol><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|list_style=font-weight: bold', '<div class="hlist" style="margin-left:0em;"><ol style="font-weight: bold;"><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|item_style=font-weight: bold', '<div class="hlist" style="margin-left:0em;"><ol><li style="font-weight: bold;">foo</li><li style="font-weight: bold;">bar</li></ol></div>'},
		{'|foo|bar|item_style1=font-weight: bold', '<div class="hlist" style="margin-left:0em;"><ol><li style="font-weight: bold;">foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|item_style2=font-weight: bold', '<div class="hlist" style="margin-left:0em;"><ol><li>foo</li><li style="font-weight: bold;">bar</li></ol></div>'},
		{'|foo|bar|ul_style=font-weight: bold', '<div class="hlist" style="margin-left:0em;"><ol style="font-weight: bold;"><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|ol_style=font-weight: bold', '<div class="hlist" style="margin-left:0em;"><ol style="font-weight: bold;"><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|li_style=font-weight: bold', '<div class="hlist" style="margin-left:0em;"><ol><li style="font-weight: bold;">foo</li><li style="font-weight: bold;">bar</li></ol></div>'},
		{'|foo|bar|li_style1=font-weight: bold', '<div class="hlist" style="margin-left:0em;"><ol><li style="font-weight: bold;">foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|li_style2=font-weight: bold', '<div class="hlist" style="margin-left:0em;"><ol><li>foo</li><li style="font-weight: bold;">bar</li></ol></div>'},
		{'|foo|bar|type=i', '<div class="hlist" style="margin-left:0em;"><ol type="i"><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|list_style_type=lower-greek', '<div class="hlist" style="margin-left:0em;"><ol style="list-style-type:lower-greek;"><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|start=2', '<div class="hlist" style="margin-left:0em;"><ol start="2"><li>foo</li><li>bar</li></ol></div>'},
		{'|foo|bar|indent=2', '<div class="hlist" style="margin-left:3.2em;"><ol><li>foo</li><li>bar</li></ol></div>'},
	})
end

return p