-- Unit tests for [[Module:Adjacent stations]]. Click talk page to run tests.
--[[
When adding new tests make sure to test all possible combinations.
A system can have one line or many;
A line can have one type, many or none;
A system or line can use defaults;
A line or type can use a title with or without a short name;
A system, line, or type can use an icon or an icon format or can not use any;
]]--
local p = require('Module:UnitTests')
function p:test_01_icon()
self:preprocess_equals_sandbox_many('{{#invoke:Adjacent stations', 'icon', {
-- Icon for a system with an icon. Use <system icon>.
{'system=testcases/Test module', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]]'},
{'testcases/Test module', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]]'},
-- Icon for a system without an icon. Show no icon.
{'system=San Diego Trolley', ''}, --TODO: use test module instead.
{'San Diego Trolley', ''}, --TODO: use test module instead.
-- Icon for a line with an icon. Use <line icon>.
{'system=testcases/Test module|line=line with title', '[[File:Logo Green Line (San Diego Trolley).svg|16px]]'},
{'testcases/Test module|line with title', '[[File:Logo Green Line (San Diego Trolley).svg|16px]]'},
-- Icon for a type without icon, belonging to a line with an icon. Use <line icon>.
{'system=testcases/Test module|line=line with type|type=type with title', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]]'},
{'testcases/Test module|line with type|type with title', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]]'},
-- Icon for a type with an icon, belonging to a line with an icon. Use <type icon>.
{'system=testcases/Test module|line=line with type|type=icon type', '[[File:Logo Blue Line (San Diego Trolley).svg|16px]]'},
{'testcases/Test module|line with type|icon type', '[[File:Logo Blue Line (San Diego Trolley).svg|16px]]'},
-- Icon for a type with an icon, belonging to a line without an icon. Use <type icon>.
{'system=testcases/Test module|line=line without icon with type|type=type with icon', '[[File:Logo Green Line (San Diego Trolley).svg|16px]]'},
{'testcases/Test module|line without icon with type|type with icon', '[[File:Logo Green Line (San Diego Trolley).svg|16px]]'},
-- Icon for a type without an icon, belonging to a line without an icon. Use <system icon>.
{'system=testcases/Test module|line=line without icon with type|type=type without icon', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]]'},
{'testcases/Test module|line without icon with type|type without icon', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]]'},
-- _default icon for lines. --TODO: add expected.
{'Antwerp tram|1', '[[File:DeLijn icon 1antw.svg|16px|alt=]]'}, --TODO: use test module instead.
-- _default icon for lines using alias. --TODO: add expected.
{'Antwerp tram|line 1', '[[File:DeLijn icon 1antw.svg|16px|alt=]]'}, --TODO: use test module instead.
-- Override _default icon for lines with icon specified. --TODO: add expected.
{'São Paulo Metropolitan Trains|13-AE', '[[File:Cptm 13.svg|16px|alt=]]'}, --TODO: use test module instead.
-- Sole line default. --TODO: add expected.
{'Taiwan High Speed Rail', '[[File:Taiwan High Speed Rail Logo(Log Only).svg|18px|link=Taiwan High Speed Rail|alt=Taiwan High Speed Rail]]'}, --TODO: use test module instead.
-- Override icon for line when "icon format" is set. --TODO: add expected.
{'Brampton Transit|Brampton Transit', ''}, --TODO: use test module instead.
})
end
--[[
-- Need to create tests for:
--- ["system icon format"]
--- line_type['icon format']
--- data['type icon format']
--- data['line icon format']
-- inline
--- route without link
--- route with link
--- croute without link
--- croute with link
--- xroute without link
--- xroute with link
--- legend
]]--
function p:test_02_icon_format()
self:preprocess_equals_sandbox_many('{{#invoke:Adjacent stations', 'icon', {
-- Icon for a line with "system icon format" = "route". --TODO: add expected.
{'system=Brussels Metro|line=1', '<span style="background-color:#B95192;border:.075em solid #B95192;padding:0 .3em">[[Brussels Metro line 1|<span style="color:#000000;font-weight:bold;font-size:inherit;white-space:nowrap">1</span>]]</span>',}, --TODO: use test module instead.
{'Brussels Metro|1', '<span style="background-color:#B95192;border:.075em solid #B95192;padding:0 .3em">[[Brussels Metro line 1|<span style="color:#000000;font-weight:bold;font-size:inherit;white-space:nowrap">1</span>]]</span>',}, --TODO: use test module instead.
-- Icon for a line with "system icon format" = "croute". --TODO: add expected.
{'system=Vorarlberg S-Bahn|line=1', '<span style="background-color:#DC0530;border:.075em solid #DC0530;border-radius:.5em;padding:0 .3em">[[Vorarlberg S-Bahn#Lines|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">S1</span>]]</span>'}, --TODO: use test module instead.
{'Vorarlberg S-Bahn|1', '<span style="background-color:#DC0530;border:.075em solid #DC0530;border-radius:.5em;padding:0 .3em">[[Vorarlberg S-Bahn#Lines|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">S1</span>]]</span>'}, --TODO: use test module instead.
-- Icon for a line with "line icon format" = "link". --TODO: add expected.
{'system=MTR|line=Island', '[[Island line (MTR)|<span style="background-color:#007dc5;border:1px solid #000"> </span>]]'}, --TODO: use test module instead.
{'MTR|Island', '[[Island line (MTR)|<span style="background-color:#007dc5;border:1px solid #000"> </span>]]'}, --TODO: use test module instead.
-- Icon for a line with "line icon format" = "link" using alias. --TODO: add expected.
{'system=MTR|line=isl', '[[Island line (MTR)|<span style="background-color:#007dc5;border:1px solid #000"> </span>]]'}, --TODO: use test module instead.
{'MTR|isl', '[[Island line (MTR)|<span style="background-color:#007dc5;border:1px solid #000"> </span>]]'}, --TODO: use test module instead.
-- Icon for a line with "line icon format" = "route". --TODO: add expected.
{'system=Shenzhen Metro|line=1', '<span style="background-color:#00ab39;border:.075em solid #00ab39;padding:0 .3em">[[Line 1 (Shenzhen Metro)|<span style="color:#000000;font-weight:bold;font-size:inherit;white-space:nowrap">1</span>]]</span>'}, --TODO: use test module instead.
{'Shenzhen Metro|1', '<span style="background-color:#00ab39;border:.075em solid #00ab39;padding:0 .3em">[[Line 1 (Shenzhen Metro)|<span style="color:#000000;font-weight:bold;font-size:inherit;white-space:nowrap">1</span>]]</span>'}, --TODO: use test module instead.
-- Icon for a line with "line icon format" = "croute". --TODO: add expected.
{'system=MTR Light Rail|line=505', '<span style="background-color:#FF0000;border:.075em solid #FF0000;border-radius:.5em;padding:0 .3em">[[MTR Light Rail Route 505|<span style="color:#000000;font-weight:bold;font-size:inherit;white-space:nowrap">505</span>]]</span>'}, --TODO: use test module instead.
{'MTR Light Rail|505', '<span style="background-color:#FF0000;border:.075em solid #FF0000;border-radius:.5em;padding:0 .3em">[[MTR Light Rail Route 505|<span style="color:#000000;font-weight:bold;font-size:inherit;white-space:nowrap">505</span>]]</span>'}, --TODO: use test module instead.
})
end
-- Tests for icon format in lines.
function p:test_03_icon_format_lines()
self:preprocess_equals_sandbox_many('{{#invoke:Adjacent stations', 'icon', {
-- Icon for a line with "icon format" = "link", a linked title, and no short name. --TODO: add expected.
{'system=testcases/Test module|line=link line', '[[501 Züm Queen|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
{'testcases/Test module|link line', '[[501 Züm Queen|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
-- Icon for a line with "icon format" = "route", a linked title, and no short name. Use "route" style with [[<title>]].
{'system=testcases/Test module|line=route line', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[501 Züm Queen|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">501 Züm Queen</span>]]</span>'},
{'testcases/Test module|route line', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[501 Züm Queen|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">501 Züm Queen</span>]]</span>'},
-- Icon for a line with "icon format" = "croute", a linked title, and no short name. Use "croute" style with [[<title>]].
{'system=testcases/Test module|line=croute line', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[501 Züm Queen|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">501 Züm Queen</span>]]</span>'},
{'testcases/Test module|croute line', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[501 Züm Queen|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">501 Züm Queen</span>]]</span>'},
-- Icon for a line with "icon format" = "xroute", a linked title, and no short name. Use "xroute" style with [[<title>]].
{'system=testcases/Test module|line=xroute line', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[501 Züm Queen|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">501 Züm Queen</span>]]</span>'},
{'testcases/Test module|xroute line', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[501 Züm Queen|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">501 Züm Queen</span>]]</span>'},
-- Icon for a line with "icon format" = "legend", a linked title, and no short name. Use line "legend" style with [[<title>]].
{'system=testcases/Test module|line=legend line', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[501 Züm Queen]]</div>'},
{'testcases/Test module|legend line', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[501 Züm Queen]]</div>'},
-- Icon for a line with "icon format" = "link", a linked title, and a short name. --TODO: add expected.
{'system=testcases/Test module|line=link line with linked title and short name', '[[501 Züm Queen|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
{'testcases/Test module|link line with linked title and short name', '[[501 Züm Queen|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
-- Icon for a line with "icon format" = "route", a linked title, and a short name. Use "route" style with [[<title>|<short name>]].
{'system=testcases/Test module|line=route line with linked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[501 Züm Queen|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route line linked short name</span>]]</span>'},
{'testcases/Test module|route line with linked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[501 Züm Queen|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route line linked short name</span>]]</span>'},
-- Icon for a line with "icon format" = "croute", a linked title, and a short name. Use "croute" style with [[<title>|<short name>]].
{'system=testcases/Test module|line=croute line with linked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[501 Züm Queen|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute line linked short name</span>]]</span>'},
{'testcases/Test module|croute line with linked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[501 Züm Queen|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute line linked short name</span>]]</span>'},
-- Icon for a line with "icon format" = "xroute", a linked title, and a short name. Use "xroute" style with [[<title>|<short name>]].
{'system=testcases/Test module|line=xroute line with linked title and short name', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[501 Züm Queen|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute line linked short name</span>]]</span>'},
{'testcases/Test module|xroute line with linked title and short name', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[501 Züm Queen|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute line linked short name</span>]]</span>'},
-- Icon for a line with "icon format" = "legend", a linked title, and a short name. --TODO: add expected.
{'system=testcases/Test module|line=legend line with linked title and short name', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[501 Züm Queen]]</div>'},
{'testcases/Test module|legend line with linked title and short name', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[501 Züm Queen]]</div>'},
-- Icon for a line with "icon format" = "link", an unlinked title, and a short name. --TODO: add expected.
{'system=testcases/Test module|line=link line with unlinked title and short name', '<span style="background-color:#ff0000;border:1px solid #000"> </span>'},
{'testcases/Test module|link line with unlinked title and short name', '<span style="background-color:#ff0000;border:1px solid #000"> </span>'},
-- Icon for a line with "icon format" = "route", an unlinked title, and a short name. Use "route" style with <short name>.
{'system=testcases/Test module|line=route line with unlinked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em;color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route line unlinked short name</span>'},
{'testcases/Test module|route line with unlinked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em;color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route line unlinked short name</span>'},
-- Icon for a line with "icon format" = "croute", an unlinked title, and a short name. Use "croute" style with <short name>.
{'system=testcases/Test module|line=croute line with unlinked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em;color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute line unlinked short name</span>'},
{'testcases/Test module|croute line with unlinked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em;color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute line unlinked short name</span>'},
-- Icon for a line with "icon format" = "xroute", an unlinked title, and a short name. Use "xroute" style with <short name>.
{'system=testcases/Test module|line=xroute line with unlinked title and short name', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em;color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute line unlinked short name</span>'},
{'testcases/Test module|xroute line with unlinked title and short name', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em;color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute line unlinked short name</span>'},
-- Icon for a line with "icon format" = "legend", an unlinked title, and a short name. --TODO: add expected.
{'system=testcases/Test module|line=legend line with unlinked title and short name', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> 501 Züm Queen</div>'},
{'testcases/Test module|legend line with unlinked title and short name', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> 501 Züm Queen</div>'},
})
end
-- Tests for icon format in types.
function p:test_04_icon_format_types()
self:preprocess_equals_sandbox_many('{{#invoke:Adjacent stations', 'icon', {
-- Icon for a type with "icon format" = "link" and a line with an icon and a linked title.
{'system=testcases/Test module|line=line with linked title and type|type=link type', '[[linked line title|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
{'testcases/Test module|line with linked title and type|link type', '[[linked line title|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
-- Icon for a type with "icon format" = "route".
{'system=testcases/Test module|line=line with linked title and type|type=route type', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[linked line title|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route type</span>]]</span>'},
{'testcases/Test module|line with linked title and type|route type', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[linked line title|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route type</span>]]</span>'},
-- Icon for a type with "icon format" = "croute".
{'system=testcases/Test module|line=line with linked title and type|type=croute type', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[linked line title|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute type</span>]]</span>'},
{'testcases/Test module|line with linked title and type|croute type', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[linked line title|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute type</span>]]</span>'},
-- Icon for a type with "icon format" = "xroute".
{'system=testcases/Test module|line=line with linked title and type|type=xroute type', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[linked line title|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute type</span>]]</span>'},
{'testcases/Test module|line with linked title and type|xroute type', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[linked line title|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute type</span>]]</span>'},
-- Icon for a type with "icon format" = "legend".
{'system=testcases/Test module|line=line with linked title and type|type=legend type', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[linked line title]] – legend title</div>'},
{'testcases/Test module|line with linked title and type|legend type', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[linked line title]] – legend title</div>'},
-- Icon for a type with "icon format" = "link", a linked title, and a short name.
{'system=testcases/Test module|line=line with linked title and type|type=link type with linked title and short name', '[[linked line title|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
{'testcases/Test module|line with linked title and type|link type with linked title and short name', '[[linked line title|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
-- Icon for a type with "icon format" = "route", a linked title, and a short name.
{'system=testcases/Test module|line=line with linked title and type|type=route type with linked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[linked line title|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route type</span>]]</span>'},
{'testcases/Test module|line with linked title and type|route type with linked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[linked line title|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route type</span>]]</span>'},
-- Icon for a type with "icon format" = "croute", a linked title, and a short name.
{'system=testcases/Test module|line=line with linked title and type|type=croute type with linked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[linked line title|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute type</span>]]</span>'},
{'testcases/Test module|line with linked title and type|croute type with linked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[linked line title|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute type</span>]]</span>'},
-- Icon for a type with "icon format" = "xroute", a linked title, and a short name.
{'system=testcases/Test module|line=line with linked title and type|type=xroute type with linked title and short name', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[linked line title|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute type</span>]]</span>'},
{'testcases/Test module|line with linked title and type|xroute type with linked title and short name', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[linked line title|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute type</span>]]</span>'},
-- Icon for a type with "icon format" = "legend", a linked title, and a short name.
{'system=testcases/Test module|line=line with linked title and type|type=legend type with linked title and short name', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[linked line title]] – [[501 Züm Queen]]</div>'},
{'testcases/Test module|line with linked title and type|legend type with linked title and short name', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[linked line title]] – [[501 Züm Queen]]</div>'},
-- Icon for a type with "icon format" = "link", an unlinked title, and a short name.
{'system=testcases/Test module|line=line with linked title and type|type=link type with unlinked title and short name', '[[linked line title|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
{'testcases/Test module|line with linked title and type|link type with unlinked title and short name', '[[linked line title|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
-- Icon for a type with "icon format" = "route", an unlinked title, and a short name.
{'system=testcases/Test module|line=line with linked title and type|type=route type with unlinked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[linked line title|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route type</span>]]</span>'},
{'testcases/Test module|line with linked title and type|route type with unlinked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[linked line title|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route type</span>]]</span>'},
-- Icon for a type with "icon format" = "croute", an unlinked title, and a short name.
{'system=testcases/Test module|line=line with linked title and type|type=croute type with unlinked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[linked line title|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute type</span>]]</span>'},
{'testcases/Test module|line with linked title and type|croute type with unlinked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[linked line title|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute type</span>]]</span>'},
-- Icon for a type with "icon format" = "xroute", an unlinked title, and a short name.
{'system=testcases/Test module|line=line with linked title and type|type=xroute type with unlinked title and short name', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[linked line title|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute type</span>]]</span>'},
{'testcases/Test module|line with linked title and type|xroute type with unlinked title and short name', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[linked line title|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute type</span>]]</span>'},
-- Icon for a type with "icon format" = "legend", an unlinked title, and a short name.
{'system=testcases/Test module|line=line with linked title and type|type=legend type with unlinked title and short name', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[linked line title]] – [[501 Züm Queen]]</div>'},
{'testcases/Test module|line with linked title and type|legend type with unlinked title and short name', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[linked line title]] – [[501 Züm Queen]]</div>'},
})
end
function p:test_05_errors_maybe()
self:preprocess_equals_sandbox_many('{{#invoke:Adjacent stations', 'icon', {
--[[
Tests for a type of a line without a title.
]]--
--TODO: update type line names
-- Icon for a type with "icon format" = "link".
{'system=testcases/Test module|line=line without title with type|type=link type', '[[Taoyuan Airport MRT|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
{'testcases/Test module|line without title with type|link type', '[[Taoyuan Airport MRT|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
-- Icon for a type with "icon format" = "route".
{'system=testcases/Test module|line=line without title with type|type=route type', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route type</span>]]</span>'},
{'testcases/Test module|line without title with type|route type', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route type</span>]]</span>'},
-- Icon for a type with "icon format" = "croute".
{'system=testcases/Test module|line=line without title with type|type=croute type', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute type</span>]]</span>'},
{'testcases/Test module|line without title with type|croute type', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute type</span>]]</span>'},
-- Icon for a type with "icon format" = "xroute".
{'system=testcases/Test module|line=line without title with type|type=xroute type', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute type</span>]]</span>'},
{'testcases/Test module|line without title with type|xroute type', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute type</span>]]</span>'},
-- Icon for a type with "icon format" = "legend".
{'system=testcases/Test module|line=line without title with type|type=legend type', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[Taoyuan Airport MRT]] – legend title</div>'},
{'testcases/Test module|line without title with type|legend type', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[Taoyuan Airport MRT]] – legend title</div>'},
-- Icon for a type with "icon format" = "link" and a short name.
{'system=testcases/Test module|line=line without title with type|type=link type with linked title and short name', '[[Taoyuan Airport MRT|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
{'testcases/Test module|line without title with type|link type with linked title and short name', '[[Taoyuan Airport MRT|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
-- Icon for a type with "icon format" = "route" and a short name.
{'system=testcases/Test module|line=line without title with type|type=route type with linked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route type</span>]]</span>'},
{'testcases/Test module|line without title with type|route type with linked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route type</span>]]</span>'},
-- Icon for a type with "icon format" = "croute" and a short name.
{'system=testcases/Test module|line=line without title with type|type=croute type with linked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute type</span>]]</span>'},
{'testcases/Test module|line without title with type|croute type with linked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute type</span>]]</span>'},
-- Icon for a type with "icon format" = "xroute" and a short name.
{'system=testcases/Test module|line=line without title with type|type=xroute type with linked title and short name', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute type</span>]]</span>'},
{'testcases/Test module|line without title with type|xroute type with linked title and short name', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute type</span>]]</span>'},
-- Icon for a type with "icon format" = "legend" and a short name.
{'system=testcases/Test module|line=line without title with type|type=legend type with linked title and short name', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[Taoyuan Airport MRT]] – [[501 Züm Queen]]</div>'},
{'testcases/Test module|line without title with type|legend type with linked title and short name', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[Taoyuan Airport MRT]] – [[501 Züm Queen]]</div>'},
-- Icon for a type with "icon format" = "link" and a short name.
{'system=testcases/Test module|line=line without title with type|type=link type with unlinked title and short name', '[[Taoyuan Airport MRT|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
{'testcases/Test module|line without title with type|link type with unlinked title and short name', '[[Taoyuan Airport MRT|<span style="background-color:#ff0000;border:1px solid #000"> </span>]]'},
-- Icon for a type with "icon format" = "route" and a short name.
{'system=testcases/Test module|line=line without title with type|type=route type with unlinked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route type</span>]]</span>'},
{'testcases/Test module|line without title with type|route type with unlinked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">route type</span>]]</span>'},
-- Icon for a type with "icon format" = "croute" and a short name.
{'system=testcases/Test module|line=line without title with type|type=croute type with unlinked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute type</span>]]</span>'},
{'testcases/Test module|line without title with type|croute type with unlinked title and short name', '<span style="background-color:#ff0000;border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#FFFFFF;font-weight:bold;font-size:inherit;white-space:nowrap">croute type</span>]]</span>'},
-- Icon for a type with "icon format" = "xroute" and a short name.
{'system=testcases/Test module|line=line without title with type|type=xroute type with unlinked title and short name', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute type</span>]]</span>'},
{'testcases/Test module|line without title with type|xroute type with unlinked title and short name', '<span style="border:.075em solid #ff0000;border-radius:.5em;padding:0 .3em">[[Taoyuan Airport MRT|<span style="color:#ff0000;font-weight:bold;font-size:inherit;white-space:nowrap">xroute type</span>]]</span>'},
-- Icon for a type with "icon format" = "legend" and a short name.
{'system=testcases/Test module|line=line without title with type|type=legend type with unlinked title and short name', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[Taoyuan Airport MRT]] – [[501 Züm Queen]]</div>'},
{'testcases/Test module|line without title with type|legend type with unlinked title and short name', '<div class="legend" style="page-break-inside:avoid;break-inside:avoid-column"><span class="legend-color" style="display:inline-block;width:1.5em;height:1.5em;margin:1px 0;border:1px solid black;background-color:#ff0000"> </span> [[Taoyuan Airport MRT]] – [[501 Züm Queen]]</div>'},
})
end
function p:test_06_icon_with_name()
self:preprocess_equals_sandbox_many('{{#invoke:Adjacent stations', 'icon', {
-- Icon for a system with an icon and a title. Use <system icon> and <title>.
{'system=testcases/Test module|name=y', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]] [[VR Group]]'},
{'testcases/Test module|name=y', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]] [[VR Group]]'},
-- Icon for a system without an icon and a title. Use system title.
{'system=San Diego Trolley|name=y', '[[San Diego Trolley]]'}, --TODO: use test module instead.
{'San Diego Trolley|name=y', '[[San Diego Trolley]]'}, --TODO: use test module instead.
-- Icon for a line with an icon format and a title. --TODO expected
{'system=MTR|line=Island|name=y', '[[Island line (MTR)|<span style="background-color:#007dc5;border:1px solid #000"> </span>]] [[Island line (MTR)|Island line]]'}, --TODO: use test module instead.
{'MTR|Island|name=y', '[[Island line (MTR)|<span style="background-color:#007dc5;border:1px solid #000"> </span>]] [[Island line (MTR)|Island line]]'}, --TODO: use test module instead.
-- Icon for a line with an icon format and a title using an alias. --TODO expected
{'system=MTR|line=isl|name=y', '[[Island line (MTR)|<span style="background-color:#007dc5;border:1px solid #000"> </span>]] [[Island line (MTR)|Island line]]'}, --TODO: use test module instead.
{'MTR|isl|name=y', '[[Island line (MTR)|<span style="background-color:#007dc5;border:1px solid #000"> </span>]] [[Island line (MTR)|Island line]]'}, --TODO: use test module instead.
--[[
Tests for lines with title variations.
]]--
-- Icon and name for a line with an icon and a title. Use <icon> and <title>.
{'system=testcases/Test module|line=line with title|name=y', '[[File:Logo Green Line (San Diego Trolley).svg|16px]] [[Green Line (San Diego Trolley)|Green Line]]'},
{'testcases/Test module|line with title|name=y', '[[File:Logo Green Line (San Diego Trolley).svg|16px]] [[Green Line (San Diego Trolley)|Green Line]]'},
-- Icon and name for a line with a linked title and a short name. Use <icon> <[[title|short name]]>.
{'system=testcases/Test module|line=line with linked title and shortname|name=y', '[[File:Logo Green Line (San Diego Trolley).svg|16px]] [[Green Line (San Diego Trolley)|linked short name]]'},
{'testcases/Test module|line with linked title and shortname|name=y', '[[File:Logo Green Line (San Diego Trolley).svg|16px]] [[Green Line (San Diego Trolley)|linked short name]]'},
-- Icon and name for a line with an unlinked title and a short name. Use <icon> <short name>.
{'system=testcases/Test module|line=line with unlinked title and shortname|name=y', '[[File:Logo Green Line (San Diego Trolley).svg|16px]] unlinked short name'},
{'testcases/Test module|line with unlinked title and shortname|name=y', '[[File:Logo Green Line (San Diego Trolley).svg|16px]] unlinked short name'},
-- Icon and name for line without title and with short name. Use <short name>.
{'system=testcases/Test module|line=line without title and with shortname|name=y', '[[File:Logo Green Line (San Diego Trolley).svg|16px]] short name'},
{'testcases/Test module|line without title and with shortname|name=y', '[[File:Logo Green Line (San Diego Trolley).svg|16px]] short name'},
-- Icon and name for line without title. Use <system title>.
{'system=testcases/Test module|line=line without title|name=y', '[[File:Logo Green Line (San Diego Trolley).svg|16px]] [[VR Group]]'},
{'testcases/Test module|line without title|name=y', '[[File:Logo Green Line (San Diego Trolley).svg|16px]] [[VR Group]]'},
--[[
Tests for lines without icons and title variations.
]]--
-- Icon and name for line without icon and with title. Use line title.
{'system=testcases/Test module|line=line without icon and with title|name=y', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]] [[Green Line (San Diego Trolley)|Green Line]]'},
{'testcases/Test module|line without icon and with title|name=y', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]] [[Green Line (San Diego Trolley)|Green Line]]'},
-- Icon and name for line without icon and with linked title and short name. Use [[line title|line short name]].
{'system=testcases/Test module|line=line without icon and with linked title and shortname|name=y', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]] [[Green Line (San Diego Trolley)|linked short name]]'},
{'testcases/Test module|line without icon and with linked title and shortname|name=y', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]] [[Green Line (San Diego Trolley)|linked short name]]'},
-- Icon and name for line without icon and with unlinked title and short name. Use line short name.
{'system=testcases/Test module|line=line without icon and with unlinked title and shortname|name=y', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]] unlinked short name'},
{'testcases/Test module|line without icon and with unlinked title and shortname|name=y', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]] unlinked short name'},
-- Icon and name for line without icon and title and with short name. Use line short name.
{'system=testcases/Test module|line=line without icon and title and with shortname|name=y', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]] short name'},
{'testcases/Test module|line without icon and title and with shortname|name=y', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]] short name'},
-- Icon and name for line without icon, title and short name. Use system title.
{'system=testcases/Test module|line=line without icon title and shortname|name=y', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]] [[VR Group]]'},
{'testcases/Test module|line without icon title and shortname|name=y', '[[File:HK MTR logo (PD).svg|14px|link=MTR|alt=MTR]] [[VR Group]]'},
--[[
Tests for line with title and types with title variations.
]]--
-- Icon and name for line with title and icon, and type with title. Use line title – type title.
{'system=testcases/Test module|line=line with type|type=type with title|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] [[Taoyuan Airport MRT]] – type with title'},
{'testcases/Test module|line with type|type with title|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] [[Taoyuan Airport MRT]] – type with title'},
-- Icon and name for line with title and icon, and type without title. Use line title.
{'system=testcases/Test module|line=line with type|type=type without title|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] [[Taoyuan Airport MRT]]'},
{'testcases/Test module|line with type|type without title|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] [[Taoyuan Airport MRT]]'},
-- Icon and name for line with title and icon, and type with linked title and short name. Use line title – [[type title|type short name]].
{'system=testcases/Test module|line=line with type|type=type with linked title and shortname|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] [[Taoyuan Airport MRT]] – [[Green Line (San Diego Trolley)|linked type short name]]'},
{'testcases/Test module|line with type|type with linked title and shortname|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] [[Taoyuan Airport MRT]] – [[Green Line (San Diego Trolley)|linked type short name]]'},
-- Icon and name for line with title and icon, and type with unlinked title and short name. Use line title – type short name.
{'system=testcases/Test module|line=line with type|type=type with unlinked title and shortname|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] [[Taoyuan Airport MRT]] – unlinked type short name'},
{'testcases/Test module|line with type|type with unlinked title and shortname|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] [[Taoyuan Airport MRT]] – unlinked type short name'},
-- Icon and name for line with title and icon, and type with without title and with short name. Use line title – type short name.
{'system=testcases/Test module|line=line with type|type=line without title and with shortname|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] [[Taoyuan Airport MRT]] – type short name'},
{'testcases/Test module|line with type|line without title and with shortname|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] [[Taoyuan Airport MRT]] – type short name'},
--[[
Tests for line without title and types with title variations.
]]--
-- Icon and name for line without title and icon, and type with title. Use type title.
{'system=testcases/Test module|line=line without title with type|type=type with title|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] type with title'},
{'testcases/Test module|line without title with type|type with title|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] type with title'},
-- Icon and name for line without title and icon, and type without title. Use system title.
{'system=testcases/Test module|line=line without title with type|type=type without title|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] [[VR Group]]'},
{'testcases/Test module|line without title with type|type without title|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] [[VR Group]]'},
-- Icon and name for line without title and icon, and type with linked title and short name. Use [[type title|type short name]].
{'system=testcases/Test module|line=line without title with type|type=type with linked title and shortname|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] [[Green Line (San Diego Trolley)|linked type short name]]'},
{'testcases/Test module|line without title with type|type with linked title and shortname|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] [[Green Line (San Diego Trolley)|linked type short name]]'},
-- Icon and name for line without title and icon, and type with unlinked title and short name. Use type short name.
{'system=testcases/Test module|line=line without title with type|type=type with unlinked title and shortname|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] unlinked type short name'},
{'testcases/Test module|line without title with type|type with unlinked title and shortname|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] unlinked type short name'},
-- Icon and name for line without title and icon, and type with without title and with short name. Use type short name.
{'system=testcases/Test module|line=line without title with type|type=line without title and with shortname|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] type short name'},
{'testcases/Test module|line without title with type|line without title and with shortname|name=y', '[[File:Taoyuan Metro Line Airport.svg|18px|link=Taoyuan Airport MRT]] type short name'},
})
end
-- Need tests for:
--- |size= – image size, expressed as width (15px), height (x15px) or both if necessary (15x15px).
--- |link= – image link (full page name)
--- |alt= – alt text
--- |bold= – setting for some types of text-based icon; default is "yes" for all of those types
--- line without title, type without title - using named and unnamed. Named params seems to ignore error.
-- defaults
-- overriding - if a line has an icon set to "", it overrides any other setting? overrides only the _default?
function p:test_07_errors()
-- No module.
self:preprocess_equals('{{#invoke:Adjacent stations/sandbox|icon|system=Taipei|R}}', '')
-- No type for line.
self:preprocess_equals('{{#invoke:Adjacent stations/sandbox|icon|system=testcases/Test module|line=line with type|type=222222}}', '<span class="scribunto-error" id="mw-scribunto-error-0">Lua error: Type "22222" for line "line with type" not in [[Module:Adjacent stations/testcases/Test module]].</span>')
end
return p