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:Disambiguation/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!
local mDab = require('Module:Disambiguation/sandbox') local ScribuntoUnit = require('Module:ScribuntoUnit') local mMockTitle = require('Module:Mock title') local suite = ScribuntoUnit:new() local dabPageTestData = { { description = 'content containing "{{disambiguation}}"', page = 'New', content = "'''New''' may refer to:\n...\n{{disambiguation}}\n", expectedBool = true, expectedText = 'yes', }, { description = 'content not containing a dab template', page = 'Paris', content = "'''Paris''' is the capital and most populous city of France.\n", expectedBool = false, expectedText = '', }, { description = 'content containing disambiguation templates with parameters', page = 'Black Swan (disambiguation)', content = "'''[[Black swan]]''' is the common name for an Australasian waterfowl.\n...\n{{Disambiguation|ship}}\n", expectedBool = true, expectedText = 'yes', }, { description = 'content containing hndis templates with named parameters', page = 'Frederick II', content = "''Frederick II''' may refer to:\n...\n{{hndis|name=Frederick 02}}\n", expectedBool = true, expectedText = 'yes', }, { description = 'content containing mountainindex set index templates with parameters', page = 'List of peaks named Signal', content = "A '''signal mountain''' is a mountain suited to sending and receiving visual signals\n...\n{{Mountainindex|Signal}}\n", expectedBool = false, expectedText = '', }, { description = 'content containing "{{italic disambiguation}}"', page = 'Abby (The Last of Us)', content = "{{italic disambiguation}}\n'''Abigail''' \"'''Abby'''\" '''Anderson''' is a character in the video game The Last of Us Part II.\n", expectedBool = false, expectedText = '', }, } for _, data in ipairs(dabPageTestData) do mMockTitle.registerMockTitle{title = data.page, content = data.content} suite[string.format( "test isDisambiguation: %s returns %s", data.description, tostring(data.expectedBool) )] = function (suite) suite:assertEquals(data.expectedBool, mDab.isDisambiguation(data.content)) end suite[string.format( "test _isDisambiguationPage: %s returns %s", data.description, tostring(data.expectedBool) )] = function (suite) local actual = mMockTitle.patchTitleConstructors( mDab._isDisambiguationPage, data.page ) suite:assertEquals(data.expectedBool, actual) end suite[string.format( 'test isDisambiguationPage: %s returns "%s"', data.description, data.expectedText )] = function (suite) local frame = mw.getCurrentFrame():newChild{ title = 'Module talk:Disambiguation', args = {data.page}, } local actual = mMockTitle.patchTitleConstructors( mDab.isDisambiguationPage, frame ) suite:assertEquals(data.expectedText, actual) end end local dabContent = { '{{disambiguation}}', '{{ disambiguation }}', '{{Disambiguation}}', '{{ Disambiguation }}', '{{ disambiguation | foo }}', '{{ disambiguation | foo=bar }}', '{{ disambiguation | foo = bar }}', '{{DAB}}', '{{dab}}', '{{dabpage}}', '{{dbig}}', '{{dis}}', '{{disam}}', '{{disamb}}', '{{disambig}}', '{{disambig misspelling}}', '{{disambig-plants}}', '{{disambiguation page}}', '{{begriffsklärung}}', '{{meta disambig}}', '{{project disambiguation}}', '{{shortcut disambig}}', '{{WP disambig}}', '{{WP-disambig}}', '{{Wikipedia disambiguation}}', '{{Airport disambiguation}}', '{{Biology disambiguation}}', '{{Call sign disambiguation}}', '{{Caselaw disambiguation}}', '{{Chinese title disambiguation}}', '{{Disambiguation cleanup}}', '{{Genus disambiguation}}', '{{Hospital disambiguation}}', '{{Human name disambiguation}}', '{{Human name disambiguation cleanup}}', '{{Letter–number combination disambiguation}}', '{{Mathematical disambiguation}}', '{{Military unit disambiguation}}', '{{Music disambiguation}}', '{{Number disambiguation}}', '{{Opus number disambiguation}}', '{{Phonetics disambiguation}}', '{{Place name disambiguation}}', '{{Portal disambiguation}}', '{{Road disambiguation}}', '{{School disambiguation}}', '{{Species Latin name abbreviation disambiguation}}', '{{Species Latin name disambiguation}}', '{{Station disambiguation}}', '{{Synagogue disambiguation}}', '{{Taxonomic authority disambiguation}}', '{{Taxonomy disambiguation}}', '{{Template disambiguation}}', '{{WoO number disambiguation}}', '{{Airport disambig}}', '{{Callsigndis}}', '{{Case law disambiguation}}', '{{CJKVdab}}', '{{Disambig-Chinese-char-title}}', '{{Chinese title disambig}}', '{{Disamb-cleanup}}', '{{Cleanup disambig}}', '{{CleanupDisambig}}', '{{Dabclean}}', '{{Dab-cleanup}}', '{{Disambig-CU}}', '{{Disambig-cu}}', '{{Disambig cleanup}}', '{{Geodis-cleanup}}', '{{Disambig-cleanup}}', '{{Disambiguation-cleanup}}', '{{Disambcleanup}}', '{{Disambigcleanup}}', '{{Disambiguate-cleanup}}', '{{Dab cleanup}}', '{{Cleanup disambiguation}}', '{{Genus disambig}}', '{{Hospitaldis}}', '{{Bio-dab}}', '{{Hndisambig}}', '{{Hndab}}', '{{HnDis}}', '{{Personal name disambiguation}}', '{{HNDIS}}', '{{Hndis}}', '{{Personal name}}', '{{Human name dab}}', '{{Personal name disambiguation cleanup}}', '{{Hndis-cleanup}}', '{{Letter-NumberCombdisambig}}', '{{Letter-NumberCombinationDisambiguation}}', '{{LNCD}}', '{{Letter-Number combination disambiguation}}', '{{Letter-NumberCombDisambig}}', '{{Letter-Number Combination Disambiguation}}', '{{Letter-number combination disambiguation}}', '{{Mathematics disambiguation}}', '{{Mathdab}}', '{{Math dab}}', '{{Math disambiguation}}', '{{Maths disambiguation}}', '{{Mil-unit-disambig}}', '{{Mil-unit-dis}}', '{{Music disambig}}', '{{Numdisambig}}', '{{Numdab}}', '{{Numberdis}}', '{{Geodab}}', '{{Geo-dis}}', '{{Geodisambig}}', '{{Geodis}}', '{{DisambigG}}', '{{DisambigGeo}}', '{{Disambiggeo}}', '{{Geographic disambiguation}}', '{{Portal disambig}}', '{{Roaddis}}', '{{Schooldis}}', '{{Schooldab}}', '{{School disambig}}', '{{LatinNameDisambig}}', '{{SpeciesLatinNameDisambig}}', '{{Station dab}}', '{{Taxonomic authorities disambiguation}}', '{{Species disambiguation}}', '{{Template disambig}}', '{{Template dab}}', '{{Template ambiguous}}', '__DISAMBIG__' } for _, content in ipairs(dabContent) do suite[string.format( 'test isDisambiguation: content containing "%s" returns true', content )] = function (suite) suite:assertTrue(mDab.isDisambiguation(content)) end end local nonDabContent = { 'just some text', '__FOO__', '{{}}', '{{ }}', '{{italic disambiguation}}', '{{Italic disambiguation}}', '{{ italic disambiguation }}', '{{ Italic disambiguation }}', '{{italic disambiguation|foo}}', '{{ italic disambiguation | foo }}', } for _, content in ipairs(nonDabContent) do suite[string.format( 'test isDisambiguation: content containing "%s" returns false', content )] = function (suite) suite:assertFalse(mDab.isDisambiguation(content)) end end return suite
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:Disambiguation/testcases/doc
(
edit
)