Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Humanipedia
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Module:Infobox television episode/testcases
Module
Discussion
English
Read
Edit source
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit source
View history
General
What links here
Related changes
Special pages
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
-- Unit tests for [[Module:Infobox television episode]]. Click talk page to run tests. local p = require('Module:UnitTests') local function expandTemplate(template, value) local frame = mw.getCurrentFrame() return frame:expandTemplate{title = template, args = value} end function p:test_01_01_infobox_title_equal_to_article_title() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { {'page_title_test=Long article title|title=' .. expandTemplate("Nowrap", {"Long article title"}), ''}, {'page_title_test=Long article title|title=Long article <br>title', ''}, {'page_title_test=Long article title|title=Long article <br >title', ''}, {'page_title_test=Long article title|title=Long article <br/>title', ''}, {'page_title_test=Long article title|title=Long article <br />title', ''}, {'page_title_test=Long article title|title=Long article <br/> title', ''}, {'page_title_test=Long article title (dab)|title=' .. expandTemplate("Nowrap", {"Long article title"}) .. '|series=[[dab]]', ''}, {'page_title_test=Long article title (dab)|title=Long article <br>title|series=[[dab]]', ''}, {'page_title_test=title|rtitle=Title', ''}, {'page_title_test=Agents of S.H.I.E.L.D. series finale|rtitle="The End Is at Hand" and "{{nowrap|What We\'re Fighting For}}"|series=[[Agents of S.H.I.E.L.D.]]', ''}, {'page_title_test=A Game of Pool (The Twilight Zone, 1959)|title=A Game of Pool|series=[[The Twilight Zone (1985 TV series)|The Twilight Zone]]', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=Just for the Record (Randall and Hopkirk (Deceased))|title=Just for the Record|series=[[Randall and Hopkirk (Deceased)]]', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=Cassie (Skins series 1)|title=Cassie|series=[[Skins (British TV series)|Skins]]', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=Debbie (Brooklyn Nine-Nine)|title=Debbie|series=[[Brooklyn Nine-Nine]]', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=Debbie (Brooklyn Nine-Nine episode)|title=Debbie|series=[[Brooklyn Nine-Nine]]', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=Title (dab)|title=Title (dab)', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=Title (not a dab)|title=Title (not a dab)|series=[[Lost]]', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=Test|title=Test', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=Test (dab)|title=Test|series=[[dab]]', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=Test (dab episode)|title=Test|series=[[dab]]', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=Test|title=test', '[[Category:Pages using infobox television episode with non-matching title]]'}, {'page_title_test=Long article title|title=' .. expandTemplate("Nowrap", {"Long article Title"}), '[[Category:Pages using infobox television episode with non-matching title]]'}, {'page_title_test=Long article title|title=Long article <br/> Title', '[[Category:Pages using infobox television episode with non-matching title]]'}, {'page_title_test=Premiere (The Tonight Show Starring Jimmy Fallon)|title=Premiere|series=[[The Tonight Show Starring Jimmy Fallon|The Tonight Show Starring<br/> Jimmy Fallon]]', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=Premiere (The Tonight Show Starring Jimmy Fallon episode)|title=Premiere|series=[[The Tonight Show Starring Jimmy Fallon|The Tonight Show Starring<br/> Jimmy Fallon]]', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, }, {nowiki=1}) end function p:test_01_02_infobox_title_equal_to_article_title_special_cases() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { {'page_test=HappyHolograms|title=#HappyHolograms', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_test=HappyHolograms|title=#HappyHolograms2', '[[Category:Pages using infobox television episode with non-matching title]]'}, {'page_test=Rehash (South Park)|title=#REHASH', ''}, {'page_test=Rehash (South Park)|title=#REHASH|series=[[South Park]]', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_test=Rehash (South Park)|title=#REHASH2|series=[[South Park]]', '[[Category:Pages using infobox television episode with non-matching title]]'}, {'page_test=Rick Potion No. 9|title=Rick Potion #9|series=[[Rick and Morty]]', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_test=All things|page_title_test=All things|title=all things', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_test=All things|page_title_test=All things|title=All Things', '[[Category:Pages using infobox television episode with non-matching title]]'}, {'page_test=ISpy (Modern Family)|page_title_test=ISpy (Modern Family)|title=iSpy|series=[[Modern Family]]', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_test=ISpy (Modern Family)|page_title_test=ISpy (Modern Family)|title=ISpy|series=[[Modern Family]]', '[[Category:Pages using infobox television episode with non-matching title]]'}, {'page_test=ISpy (Modern Family)|page_title_test=ISpy (Modern Family)|title=I Spy|series=[[Modern Family]]', '[[Category:Pages using infobox television episode with non-matching title]]'}, {'page_test=Google Behind the Screen|page_title_test=Google Behind the Screen|title=Google: Behind the Screen', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_test=Google Behind the Screen|page_title_test=Google Behind the Screen|title=Google Behind the Screen', '[[Category:Pages using infobox television episode with non-matching title]]'}, {'page_test=Eps1.0 hellofriend.mov|page_title_test=Eps1.0 hellofriend.mov|title=eps1.0_hellofriend.mov|italic_title=no', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_test=Eps1.0 hellofriend.mov|page_title_test=Eps1.0 hellofriend.mov|title=eps1.0 hellofriend.mov|italic_title=no', '[[Category:Pages using infobox television episode with non-matching title]]'}, {'page_test=Wvrdr error 100 oest-of-th3-gs.gid30n not found|page_title_test=Wvrdr error 100 oest-of-th3-gs.gid30n not found|title=wvrdr_error_100<oest-of-th3-gs.gid30n> not found|italic_title=no', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_test=Wvrdr error 100 oest-of-th3-gs.gid30n not found|page_title_test=Wvrdr error 100 oest-of-th3-gs.gid30n not found|title=wvrdr error 100<oest-of-th3-gs.gid30n> not found|italic_title=no', '[[Category:Pages using infobox television episode with non-matching title]]'}, {'page_test=30 Rock: A One-Time Special|page_title_test=30 Rock: A One-Time Special|title=\'\'30 Rock\'\': A One-Time Special|italic_title=no', '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_test=30 Rock: A One-Time Special|page_title_test=30 Rock: A One-Time Special|title=30 Rock: A One-Time Special|italic_title=no', '[[Category:Pages using infobox television episode with non-matching title]]'}, }, {nowiki=1}) end function p:test_01_03_infobox_title_equal_to_article_title_quotes() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { {'page_title_test=\'Test|title=' .. expandTemplate("Space+single", {}) .. "Test", '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=Test\'|title=Test' .. expandTemplate("Single+space", {}), '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=\'Test (dab)|title=' .. expandTemplate("Space+single", {}) .. "Test|series=[[dab]]", '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=\'Test\'|title=' .. expandTemplate("Space+single", {}) .. "Test" .. expandTemplate("Single+space", {}), '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=\'Test|title=' .. expandTemplate("Space+single", {}) .. "test", '[[Category:Pages using infobox television episode with non-matching title]]'}, {'page_title_test="A" in a title|title=' .. expandTemplate("Space+single", {}) .. "A' in a title", '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test=Bart Gets an "F"|title=Bart Gets an \'F' .. expandTemplate("Single+space", {}), '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test="A" in a title (dab)|title=' .. expandTemplate("Space+single", {}) .. "A' in a title|series=[[dab]]", '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test="A" in a title is an "F"|title=' .. expandTemplate("Space+single", {}) .. "A' in a title is an 'F" .. expandTemplate("Single+space", {}), '[[Category:Pages using infobox television episode with unnecessary title parameter]]'}, {'page_title_test="A" in a title|title=' .. expandTemplate("Space+single", {}) .. '"a" in a title', '[[Category:Pages using infobox television episode with non-matching title]]'}, }, {nowiki=1}) end function p:test_02_image_auxiliary_values() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { {'image=test|image_size=1', ''}, --{'image=<!-- Deleted -->', '[[Category:Pages using infobox television episode with image-related values without an image]]'}, {'image_size=1', '[[Category:Pages using infobox television episode with image-related values without an image]]'}, {'image_upright=1', '[[Category:Pages using infobox television episode with image-related values without an image]]'}, {'image_alt=test', '[[Category:Pages using infobox television episode with image-related values without an image]]'}, {'alt=test', '[[Category:Pages using infobox television episode with image-related values without an image]]'}, {'caption=test', '[[Category:Pages using infobox television episode with image-related values without an image]]'}, }, {nowiki=1}) end function p:test_03_is_image_formatted_correctly() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { {'image=image.jpg', ''}, {'image=File:image.jpg', '[[Category:Pages using infobox television episode with incorrectly formatted values|image]]'}, {'image=[[File:image.jpg]]', '[[Category:Pages using infobox television episode with incorrectly formatted values|image]]'}, {'image=Image:image.jpg', '[[Category:Pages using infobox television episode with incorrectly formatted values|image]]'}, {'image=[[Image:image.jpg]]', '[[Category:Pages using infobox television episode with incorrectly formatted values|image]]'}, }, {nowiki=1}) end function p:test_04_is_image_size_using_px() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { {'image=test|image_size=100', ''}, {'image=test|image_size=100px', '[[Category:Pages using infobox television episode with incorrectly formatted values|image_size]]'}, }, {nowiki=1}) end function p:test_05_links_only() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values|', { {'series=[[Lost]]', ''}, {'prev=[[? (Lost)]]', ''}, {'next=[[? (Lost)]]', ''}, {'series=Lost', '[[Category:Pages using infobox television episode with unlinked values|series]]'}, {'prev=? (Lost)', '[[Category:Pages using infobox television episode with unlinked values|prev]]'}, {'next=? (Lost)', '[[Category:Pages using infobox television episode with unlinked values|next]]'}, {"series=''Lost''", '[[Category:Pages using infobox television episode with unlinked values|series]]'}, {"series=''[[Lost]]''", '[[Category:Pages using infobox television episode with incorrectly formatted values|series]]'}, {"prev=''[[? (Lost)]]''", '[[Category:Pages using infobox television episode with incorrectly formatted values|prev]]'}, {"next=''[[? (Lost)]]''", '[[Category:Pages using infobox television episode with incorrectly formatted values|next]]'}, }, {nowiki=1}) end function p:test_06_using_overall() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { {'episode=1', ''}, {'season=1', ''}, {'series_no=1', ''}, {'episode=1 (1 overall)', '[[Category:Pages using infobox television episode with incorrectly formatted values|episode]]'}, {'season=1 (1 overall)', '[[Category:Pages using infobox television episode with incorrectly formatted values|season]]'}, {'series_no=1 (1 overall)', '[[Category:Pages using infobox television episode with incorrectly formatted values|series_no]]'}, }, {nowiki=1}) end function p:test_07_formatted() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { {"rtitle=''rtitle''", ''}, {"rprev=''rprev''", ''}, {"rnext=''rnext''", ''}, {"image=image|image_alt=''image_alt''", ''}, {"image=image|alt=''alt''", ''}, {"image=image|caption=''caption''", ''}, {"based_on=''based_on''", ''}, {"music=''music''", ''}, {"guests=''guests''", ''}, {"series=[[American Horror Story]]|season_article=\'\'[[American Horror Story: Apocalypse]]\'\'", ''}, {"series=''[[Lost (TV series)]]''", '[[Category:Pages using infobox television episode with incorrectly formatted values|series]]'}, {"prev=''[[prev]]''", '[[Category:Pages using infobox television episode with incorrectly formatted values|prev]]'}, {"next=''[[next]]''", '[[Category:Pages using infobox television episode with incorrectly formatted values|next]]'}, {"episode=''1''", '[[Category:Pages using infobox television episode with incorrectly formatted values|episode]]'}, {"season=''1''", '[[Category:Pages using infobox television episode with incorrectly formatted values|season]]'}, {"series_no=''1''", '[[Category:Pages using infobox television episode with incorrectly formatted values|series_no]]'}, {"episode_list=[[List of ''Lost'' episodes]]", '[[Category:Pages using infobox television episode with incorrectly formatted values|episode_list]][[Category:Pages using infobox television episode with incorrectly formatted values|episode_list]]'}, {"producer=''Executive producer'': John", '[[Category:Pages using infobox television episode with incorrectly formatted values|producer]]'}, }, {nowiki=1}) end function p:test_08_linked() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { {'episode=1', ''}, {'season=1', ''}, {'series_no=1', ''}, {'episode_list=List of Lost episodes', ''}, {'episode=[[1]]', '[[Category:Pages using infobox television episode with incorrectly formatted values|episode]]'}, {'season=[[1]]', '[[Category:Pages using infobox television episode with incorrectly formatted values|season]]'}, {'series_no=[[1]]', '[[Category:Pages using infobox television episode with incorrectly formatted values|series_no]]'}, {'episode_list=[[List of Lost episodes]]', '[[Category:Pages using infobox television episode with incorrectly formatted values|episode_list]]'}, }, {nowiki=1}) end function p:test_09_has_icons() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { {'director=' .. expandTemplate("USA", {}) .. 'test', '[[Category:Pages using infobox television with flag icon]]'}, }, {nowiki=1}) end -- function p:test_10_invalid_tags() -- self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { -- {'guests={{center|Name}}', '[[Category:Pages using infobox television episode with incorrectly formatted values|guests]]'}, -- {'episode=<small>Name</small>', '[[Category:Pages using infobox television episode with incorrectly formatted values|episode]]'}, -- {'episode=' .. expandTemplate("Small", {"Name"}), '[[Category:Pages using infobox television episode with incorrectly formatted values|episode]]'}, -- }, {nowiki=1}) -- end -- {'director=First name<br>Second name', '[[Category:Pages using infobox television episode with incorrectly formatted values|director]]'}, -- {'director=First name<br/>Second name', '[[Category:Pages using infobox television episode with incorrectly formatted values|director]]'}, -- {'director=First name<br />Second name', '[[Category:Pages using infobox television episode with incorrectly formatted values|director]]'}, function p:test_10_are_dates_formatted_correctly() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { {'airdate=' .. expandTemplate("Start date", {"1999", "3", "4"}), ''}, {'released=' .. expandTemplate("Start date", {"1999", "3", "4"}), ''}, {'airdate=' .. expandTemplate("Start date and age", {"1999", "3", "4"}), '[[Category:Pages using infobox television episode with nonstandard dates]]'}, {'airdate=' .. expandTemplate("Start and end dates", {"1939", "9", "1", "1945", "9", "2"}), '[[Category:Pages using infobox television episode with nonstandard dates]]'}, {'airdate=' .. expandTemplate("Film date/sandbox", {"1999", "3", "4"}), '[[Category:Pages using infobox television episode with unnecessary list markup]][[Category:Pages using infobox television episode with nonstandard dates]]'}, {'airdate=4/3/1999', '[[Category:Pages using infobox television episode with nonstandard dates]]'}, {'airdate=March 4, 1999', '[[Category:Pages using infobox television episode with nonstandard dates]]'}, {'released=4/3/1999', '[[Category:Pages using infobox television episode with nonstandard dates]]'}, {'released=March 4, 1999', '[[Category:Pages using infobox television episode with nonstandard dates]]'}, {'airdate=Unaired', ''}, {'released=Unaired', ''}, }, {nowiki=1}) end function p:test_11_is_italic_title_valid_value() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { {'', ''}, {'italic_title=no', ''}, {'italic_title=n', '[[Category:Pages using infobox television episode with incorrectly formatted values|italic_title]]'}, {'italic_title=y', '[[Category:Pages using infobox television episode with incorrectly formatted values|italic_title]]'}, }, {nowiki=1}) end function p:test_12_list_markup() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { {'director=* First director', ''}, {'director=* First director * Second director', ''}, {'episode=1 <br> 2', ''}, {'director=' .. expandTemplate("Plainlist", {"|* First director * Second director"}), '[[Category:Pages using infobox television episode with unnecessary list markup]]'}, {'director=' .. expandTemplate("Indented plainlist", {"|* First director * Second director"}), '[[Category:Pages using infobox television episode with unnecessary list markup]]'}, {'director=' .. expandTemplate("Flatlist", {"|* First director * Second director"}), '[[Category:Pages using infobox television episode with unnecessary list markup]]'}, {'director=' .. expandTemplate("Hlist", {"|First director|Second director"}), '[[Category:Pages using infobox television episode with unnecessary list markup]]'}, {'director=' .. expandTemplate("Unbulleted list", {"|First director|Second director"}), '[[Category:Pages using infobox television episode with unnecessary list markup]]'}, {'director=' .. expandTemplate("Bulleted list", {"|First director|Second director"}), '[[Category:Pages using infobox television episode with unnecessary list markup]]'}, {'director=' .. expandTemplate("Ordered list", {"|First director|Second director"}), '[[Category:Pages using infobox television episode with unnecessary list markup]]'}, {'director=' .. expandTemplate("Horizontal ordered list", {"|First director|Second director"}), '[[Category:Pages using infobox television episode with unnecessary list markup]]'}, {'director=First director <br> Second director', '[[Category:Pages using infobox television episode with unnecessary list markup]]'}, {'director=First director <br > Second director', '[[Category:Pages using infobox television episode with unnecessary list markup]]'}, {'director=First director <br/> Second director', '[[Category:Pages using infobox television episode with unnecessary list markup]]'}, {'director=First director <br /> Second director', '[[Category:Pages using infobox television episode with unnecessary list markup]]'}, {'director=First director <BR> Second director', '[[Category:Pages using infobox television episode with unnecessary list markup]]'}, {'commentary=' .. expandTemplate("Plainlist", {"* First person * Second person"}), '[[Category:Pages using infobox television episode with unnecessary list markup]]'}, }, {nowiki=1}) end -- function p:test_13_are_refs_in_infobox() -- self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { -- {'airdate=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '<ref>test</ref>', '[[Category:Pages using infobox television episode with references in the infobox]]'}, -- {'director=First director<ref>test</ref>', '[[Category:Pages using infobox television episode with references in the infobox]]'}, -- {'caption=image caption<ref>test</ref>', ''}, -- {'production=1234<ref>test</ref>', ''}, -- }, {nowiki=1}) -- end function p:test_16_all_errors() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values', { {'page_title_test=Test|title=Test|episode=[[1]]|image_size=1|series=Lost|director=' .. expandTemplate("USA", {}) .. 'test|airdate=4/3/1999', '[[Category:Pages using infobox television episode with unnecessary title parameter]][[Category:Pages using infobox television episode with image-related values without an image]][[Category:Pages using infobox television episode with unlinked values|series]][[Category:Pages using infobox television episode with incorrectly formatted values|episode]][[Category:Pages using infobox television with flag icon]][[Category:Pages using infobox television episode with nonstandard dates]]'}, }, {nowiki=1}) end function p:test_17_italic_title() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'italic_title', { {'', ''}, {'page_title_test=', ''}, {'page_title_test=title', ''}, {'page_title_test=title (dab)', ''}, {'page_title_test=title|series=Lost', ''}, {'page_title_test=title (dab)|series=Lost', ''}, {'page_title_test=title (Lost)|series=Lost|italic_title=no', ''}, {'page_title_test=Agents of S.H.I.E.L.D. series finale|page_test=Agents of S.H.I.E.L.D. series finale|italic_title=no', ''}, {'page_title_test=title (Lost)|series=Lost', 'italic_dab'}, {'page_title_test=title (Lost episode)|series=Lost', 'italic_dab'}, {'page_title_test=title (Lost episode)|series=Lost', 'italic_dab'}, {'page_title_test=The End (The X-Files)|series=The X-Files', 'italic_dab'}, {'page_title_test=The End (The X-Files episode)|series=The X-Files', 'italic_dab'}, {'page_title_test=A Game of Pool (The Twilight Zone, 1959)|series=[[The Twilight Zone (1985 TV series)|The Twilight Zone]]', 'italic_dab'}, {'page_title_test=Just for the Record (Randall and Hopkirk (Deceased))|series=Randall and Hopkirk (Deceased)', 'italic_dab'}, {'page_title_test=Premiere (The Tonight Show Starring Jimmy Fallon)|series=[[The Tonight Show Starring Jimmy Fallon|The Tonight Show Starring<br/> Jimmy Fallon]]', 'italic_dab'}, {'page_title_test=Agents of S.H.I.E.L.D. series finale|page_test=Agents of S.H.I.E.L.D. series finale|series=Agents of S.H.I.E.L.D.', '[[Category:Pages using infobox television episode with unnecessary manual displaytitle]]'}, {'page_title_test=The End (Lost)|page_test=Agents of S.H.I.E.L.D. series finale|series=Lost', 'italic_dab[[Category:Pages using infobox television episode with unnecessary manual displaytitle]]'}, }, {nowiki=1}) end local function handle_title(text) return "\"'''" .. text .. "'''\"" end local function handle_marks(text, side) local left_template = "Space+single" local right_template = "Single+space" if side == "left" then return handle_title(expandTemplate(left_template, {}) .. text) elseif side == "right" then return handle_title(text .. expandTemplate(right_template, {})) else return handle_title(expandTemplate(left_template, {}) .. text .. expandTemplate(right_template, {})) end end function p:test_18_above_title() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'above_title', { {'rtitle=title', "'''title'''"}, {'rtitle="title1" and "title2"', handle_title("title1") .. " and " .. handle_title("title2")}, {'rtitle="whoami" and "Hello, Elliot"', handle_title("whoami") .. " and " .. handle_title("Hello, Elliot")}, {'rtitle="The End Is at Hand" and "' .. expandTemplate('nowrap', {"What We\'re Fighting For"}) .. '"', handle_title("The End Is at Hand") .. " and " .. handle_title(expandTemplate('nowrap', {'What We\'re Fighting For'}))}, {'rtitle="The Ed-touchables" and<br/> "Nagged to Ed"', handle_title("The Ed-touchables") .. " and<br/> " .. handle_title("Nagged to Ed")}, {'title=title', handle_title("title")}, {'title=title (dab)', handle_title("title (dab)")}, {'title=title (dab)|series=dab', handle_title("title (dab)")}, {'title=title (dab)|series=[[dab]]', handle_title("title (dab)")}, {'title=title (Randall and Hopkirk (Deceased))|series=Randall and Hopkirk (Deceased)', handle_title("title (Randall and Hopkirk (Deceased))")}, {'title=title (Randall and Hopkirk (Deceased))|series=[[Randall and Hopkirk (Deceased)]]', handle_title("title (Randall and Hopkirk (Deceased))")}, {'title=#title', handle_title("#title")}, {'page_title_test=title', handle_title("title")}, {'page_title_test=title|series=dab', handle_title("title")}, {'page_title_test=title (another title)', handle_title("title (another title)")}, {'page_title_test=title (another title)|series=dab', handle_title("title (another title)")}, {'page_title_test=title (dab)|series=dab', handle_title("title")}, {'page_title_test=title (dab)|series=[[dab]]', handle_title("title")}, {'page_title_test=title (Randall and Hopkirk (Deceased))|series=Randall and Hopkirk (Deceased)', handle_title("title")}, {'page_title_test=title (Randall and Hopkirk (Deceased))|series=[[Randall and Hopkirk (Deceased)]]', handle_title("title")}, {'page_title_test=A Game of Pool (The Twilight Zone, 1959)|series=[[The Twilight Zone (1985 TV series)|The Twilight Zone]]', handle_title("A Game of Pool")}, {'page_title_test=\'title', handle_marks("title", "left", "'")}, {'page_title_test=title\'', handle_marks("title", "right", "'")}, {'page_title_test=\'title (dab)|series=[[dab]]', handle_marks("title", "left")}, {'page_title_test=\'title (another title)', handle_marks("title (another title)", "left")}, {'page_title_test=\'title (another title)|series=[[dab]]', handle_marks("title (another title)", "left")}, {'page_title_test=\'title\'', handle_marks("title", "both")}, {'page_title_test="A" in a title', handle_marks("A' in a title", "left")}, {'page_title_test=Bart Gets an "F"', handle_marks("Bart Gets an 'F", "right")}, {'page_title_test="A" in a title (dab)|series=[[dab]]', handle_marks("A' in a title", "left")}, {'page_title_test="A" in a title (another title)', handle_marks("A' in a title (another title)", "left")}, {'page_title_test="A" in a title (another title)|series=[[dab]]', handle_marks("A' in a title (another title)", "left")}, {'page_title_test="A" in a title is an "F"', handle_marks("A' in a title is an 'F", "both")}, {'page_title_test=The Old Man and the "C" Student', handle_title("The Old Man and the 'C' Student")}, {'page_test=HappyHolograms', handle_title("#HappyHolograms")}, {'page_test=Rick Potion No. 9', handle_title("Rick Potion #9")}, {'page_test=Rehash (South Park)|series=South Park', handle_title("#REHASH")}, {'page_test=All things', handle_title("all things")}, {'page_test=ISpy (Modern Family)|series=[[Modern Family]]', handle_title("iSpy")}, {'page_test=Google Behind the Screen|series=[[Backlight (TV program)]]', handle_title("Google: Behind the Screen")}, {'page_test=Eps1.0 hellofriend.mov|series=[[Mr. Robot]]|italic_title=no', handle_title("eps1.0_hellofriend.mov")}, {'page_test=Wvrdr error 100 oest-of-th3-gs.gid30n not found|series=[[Legends of Tomorrow]]|italic_title=no', handle_title("wvrdr_error_100<oest-of-th3-gs.gid30n> not found")}, {'page_test=30 Rock: A One-Time Special|series=[[30 Rock]]|italic_title=no', handle_title("''30 Rock'': A One-Time Special")}, {'page_test=Advanced Dungeons & Dragons (Community)|series=[[Community (TV series)|Community]]|italic_title=no', handle_title("Advanced ''Dungeons & Dragons''")}, }, {nowiki=1}) end function p:test_18_above_title_no_bold() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'above_title', { {'title=title|no_bold=yes', "\"title\""}, {'page_test=eps1.0_hellofriend.mov|no_bold=yes', "\"eps1.0_hellofriend.mov\""}, {'page_test=Strip Jack (Rebus)|no_bold=yes', "\"Strip Jack\""}, }, {nowiki=1}) end function p:test_19_episode_list() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'episode_list', { {'episode_list=List of Lost episodes', '[[List of Lost episodes|List of episodes]]'}, {'episode_list=EastEnders#Storylines', '[[EastEnders#Storylines|Storylines]]'}, {'episode_list=[[List of Lost episodes]]', '[[List of Lost episodes]]'}, {"episode_list=List of ''Lost'' episodes", "List of ''Lost'' episodes"}, {'series=[[Lost (TV series)]]', '[[List of Lost (TV series) episodes|List of episodes]]'}, {'series=[[Lost (TV series)|Lost]]', '[[List of Lost (TV series) episodes|List of episodes]]'}, {'series=Agents of S.H.I.E.L.D.', '[[List of Agents of S.H.I.E.L.D. episodes|List of episodes]]'}, {'series=[[Agents of S.H.I.E.L.D.]]', '[[List of Agents of S.H.I.E.L.D. episodes|List of episodes]]'}, {'series=[[Agents of S.H.I.E.L.D.|Agents of S.H.I.E.L.D.]]', '[[List of Agents of S.H.I.E.L.D. episodes|List of episodes]]'}, {'series=The X-Files', '[[List of The X-Files episodes|List of episodes]]'}, {'series=[[The X-Files]]', '[[List of The X-Files episodes|List of episodes]]'}, {'series=[[The X-Files|The X-Files]]', '[[List of The X-Files episodes|List of episodes]]'}, {'series=[[no page exists like this]]', ''}, }, {nowiki=1}) end function p:test_20_validate_values_crossover_images() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values_crossover', { {'image=test|image_size=1', ''}, {'image_size=1', '[[Category:Pages using infobox television episode with image-related values without an image]]'}, {'image_upright=1', '[[Category:Pages using infobox television episode with image-related values without an image]]'}, {'image_alt=test', '[[Category:Pages using infobox television episode with image-related values without an image]]'}, {'alt=test', '[[Category:Pages using infobox television episode with image-related values without an image]]'}, {'caption=test', '[[Category:Pages using infobox television episode with image-related values without an image]]'}, }, {nowiki=1}) end function p:test_21_validate_values_crossover_has_icons() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values_crossover', { {'director1=' .. expandTemplate("USA", {}) .. 'test', '[[Category:Pages using infobox television with flag icon]]'}, }, {nowiki=1}) end function p:test_22_validate_values_crossover_airdates() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values_crossover', { {'airdate_overall=' .. expandTemplate("Start date", {"1999", "3", "4"}), ''}, {'series1=[[series1]]|airdate1=' .. expandTemplate("Start date", {"1999", "3", "4"}), ''}, {'series1=[[series1]]|airdate1=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series2=[[series2]]|airdate2=' .. expandTemplate("Start date", {"1999", "3", "4"}), ''}, {'series1=[[series1]]|airdate1=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series2=[[series2]]|airdate2=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series3=[[series3]]|airdate3=' .. expandTemplate("Start date", {"1999", "3", "4"}), ''}, {'series1=[[series1]]|airdate1=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series2=[[series2]]|airdate2=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series3=[[series3]]|airdate3=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series4=[[series4]]|airdate4=' .. expandTemplate("Start date", {"1999", "3", "4"}), ''}, {'series1=[[series1]]|airdate1=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series2=[[series2]]|airdate2=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series3=[[series3]]|airdate3=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series4=[[series4]]|airdate4=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series5=[[series5]]|airdate5=' .. expandTemplate("Start date", {"1999", "3", "4"}), ''}, {'airdate_overall=4/3/1999', '[[Category:Pages using infobox television episode with nonstandard dates]]'}, {'series1=[[series1]]|airdate1=4/3/1999', '[[Category:Pages using infobox television episode with nonstandard dates]]'}, {'series1=[[series1]]|airdate1=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series2=[[series2]]|airdate2=4/3/1999', '[[Category:Pages using infobox television episode with nonstandard dates]]'}, {'series1=[[series1]]|airdate1=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series2=[[series2]]|airdate2=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series3=[[series3]]|airdate3=4/3/1999', '[[Category:Pages using infobox television episode with nonstandard dates]]'}, {'series1=[[series1]]|airdate1=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series2=[[series2]]|airdate2=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series3=[[series3]]|airdate3=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series4=[[series4]]|airdate4=4/3/1999', '[[Category:Pages using infobox television episode with nonstandard dates]]'}, {'series1=[[series1]]|airdate1=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series2=[[series2]]|airdate2=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series3=[[series3]]|airdate3=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series4=[[series4]]|airdate4=' .. expandTemplate("Start date", {"1999", "3", "4"}) .. '|series5=[[series5]]|airdate5=4/3/1999', '[[Category:Pages using infobox television episode with nonstandard dates]]'}, }, {nowiki=1}) end function p:test_23_validate_values_crossover_links_only() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values_crossover', { {'series1=[[Lost]]', ''}, {'series1=[[Lost]]|prev1=[[? (Lost)]]', ''}, {'series1=[[Lost]]|next1=[[? (Lost)]]', ''}, {'series1=[[Lost]]|series2=Lost', '[[Category:Pages using infobox television episode with unlinked values|series]]'}, {'series1=[[Lost]]|prev1=? (Lost)', '[[Category:Pages using infobox television episode with unlinked values|prev]]'}, {'series1=[[Lost]]|next1=? (Lost)', '[[Category:Pages using infobox television episode with unlinked values|next]]'}, {"series1=''[[Lost]]''", '[[Category:Pages using infobox television episode with incorrectly formatted values|series]]'}, {"series1=[[Lost]]|prev1=''[[? (Lost)]]''", '[[Category:Pages using infobox television episode with incorrectly formatted values|prev]]'}, {"series1=[[Lost]]|next1=''[[? (Lost)]]''", '[[Category:Pages using infobox television episode with incorrectly formatted values|next]]'}, {'series1=[[Lost]]|series2=Lost', '[[Category:Pages using infobox television episode with unlinked values|series]]'}, {'series1=[[Lost]]|prev1=[[? (Lost)]]|series2=[[Lost]]|prev2=? (Lost)', '[[Category:Pages using infobox television episode with unlinked values|prev]]'}, {'series1=[[Lost]]|next1=[[? (Lost)]]|series2=[[Lost]]|next2=? (Lost)', '[[Category:Pages using infobox television episode with unlinked values|next]]'}, {"series1=[[Lost]]|series2=''[[Lost]]''", '[[Category:Pages using infobox television episode with incorrectly formatted values|series]]'}, {"series1=[[Lost]]|prev1=[[? (Lost)]]|series2=[[Lost]]|prev2=''[[? (Lost)]]''", '[[Category:Pages using infobox television episode with incorrectly formatted values|prev]]'}, {"series1=[[Lost]]|next1=[[? (Lost)]]|series2=[[Lost]]|next2=''[[? (Lost)]]''", '[[Category:Pages using infobox television episode with incorrectly formatted values|next]]'}, }, {nowiki=1}) end function p:test_24_validate_values_crossover_using_overall() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values_crossover', { {'series1=[[Lost]]|episode_no1=1', ''}, {'series1=[[Lost]]|season1=1', ''}, {'series1=[[Lost]]|episode_no1=1 (1 overall)', '[[Category:Pages using infobox television episode with incorrectly formatted values|episode]]'}, {'series1=[[Lost]]|season1=1 (1 overall)', '[[Category:Pages using infobox television episode with incorrectly formatted values|season]]'}, }, {nowiki=1}) end function p:test_25_validate_values_crossover_linked_or_formatted() self:preprocess_equals_sandbox_many('{{#invoke:Infobox television episode', 'validate_values_crossover', { {'series1=[[Lost]]|episode_no1=1', ''}, {'series1=[[Lost]]|season1=1', ''}, {'series1=[[Lost]]|episode_list1=List of Lost episodes', ''}, {'series1=[[Lost]]|episode_no1=[[1]]', '[[Category:Pages using infobox television episode with incorrectly formatted values|episode]]'}, {'series1=[[Lost]]|season1=[[1]]', '[[Category:Pages using infobox television episode with incorrectly formatted values|season]]'}, {'series1=[[Lost]]|episode_list1=[[List of Lost episodes]]', '[[Category:Pages using infobox television episode with incorrectly formatted values|episode_list]]'}, {"series1=[[Lost]]|episode_no1=''1''", '[[Category:Pages using infobox television episode with incorrectly formatted values|episode]]'}, {"series1=[[Lost]]|season1=''1''", '[[Category:Pages using infobox television episode with incorrectly formatted values|season]]'}, {"series1=[[Lost]]|episode_list1=List of ''Lost'' episodes]]", '[[Category:Pages using infobox television episode with incorrectly formatted values|episode_list]][[Category:Pages using infobox television episode with incorrectly formatted values|episode_list]]'}, }, {nowiki=1}) end return p
Summary:
Please note that all contributions to Humanipedia may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Humanipedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Template used on this page:
Module:Infobox television episode/testcases/doc
(
edit
)