FamilySearch Wiki:Extension tests
The following are tests of the extensions running on the wiki. Where applicable, if the "Test" value matches the "Expected" value, the extension can be assumed to be working.
Admin Links
This should be a valid link: Special:AdminLinks
If you are an admin, you should see links by your personal tools.
AdvancedSearch
If #CirrusSearch is enabled, the extension produces the "Advanced Search" form on Special:Search.
Approved Revs
This should be a valid link: Special:ApprovedRevs
Arrays
- Test
- orange, red, yellow, yellow
- Expected
- orange, red, yellow, yellow
BatchUserRights
This should be a valid link: Special:BatchUserRights
Bootstrap
- This test should be done while using the Chameleon skin; view page with useskin=chameleon
This should be a greeny shadowed alert box with white text:
I am bootstrapped
BootstrapComponents
Should be an accordion below:
Headline for Panel1
Headline for Panel2
Headline for Panel3
Headline for Panel4
Cargo
The Special:CargoTables should exist
CategoryTree
A category tree should be shown:
CharInsert
CirrusSearch
- For semantic wikis
The search results should display "ask" in bold:
- For Cite enabled wikis
The search results should display "ref" in bold:
Cite
- Test
- Text[1]
- ↑ Test
- Expected
- Text[1]
- Jump up ↑ Test
CiteThisPage
This should be a valid link: Special:CiteThisPage
CodeEditor
This should open in the ACE editor interface: edit
CodeMirror
- The "Editing" tab on Special:Preferences should have the "Enable colorblind-friendly mode" checkbox ("Accessibility" section).
ContributionScores
This should be a valid link: Special:ContributionScores
Data Transfer
This should be a valid link: Special:ImportCSV
Description2
This should produce "Description2 works!" in the description meta tag of this page head.
DismissableSiteNotice
The ext.dismissableSiteNotice
ResourceLoader module should be registered; in the developer console running mw.loader.getState('ext.dismissableSiteNotice');
should return a string (rather than null
).
DisplayTitle
- Expected
FamilySearch Wiki:Extension tests
- Result
FamilySearch Wiki:Extension tests
Echo
This should be a valid link: Special:Notifications
Elastica
Usually, it is a dependency of CirrusSearch. If CirrusSearch test is passed, Elastica works. The extension must be listed on Special:Version.
EmailFile
This should be a valid link: Special:EmailFile
EmailRegisteredUsers
This should be a valid link: Special:EmailRegisteredUsers
External Data
- Test
- Europe
- Expected
- Europe
FixedHeaderTable
Header of table below should be fixed:
<fixedheadertable fixedcolumns="1">
Header 1 | Header 2 |
---|---|
Cell 1 | Cell 2 |
Cell 3 | Cell 4 |
</fixedheadertable>
FsLookAndFeel
The ext.fslookandfeel.scripts
ResourceLoader module should be registered; in the developer console running mw.loader.getState('ext.fslookandfeel.scripts');
should return a string (rather than null
).
FsSignin
No test was invented. The extension must be listed on Special:Version.
Gadgets
- This link must not contain the error message "
FamilySearch Wiki does not have namespace "2300"
. - You have gadgets!
GlobalNotice
No test was invented. The extension must be listed on Special:Version.
GoogleTranslator
The sidebar should include an option to translate the page into different languages.
Header Tabs
Two tabs should be visible below.
The content of MediaWiki:hf-footer-FamilySearch Wiki:Extension tests must be shown as a footer on the current page.
<div class="card bg-dark text-white">
<div class="card-body font-weight-bold text-center">I am Footer</div>
</div>
ImageMap
InputBox
- Test
- Expected
- An input box
Interwiki
This should be a valid link: Special:Interwiki
LabeledSectionTransclusion
- Test
- This is a test.
- Expected
- This is a test.
NOTE: In this case, the "Section by heading" must be a section in the page that is to be transcluded.
- Test
This is a section with a heading
- Expected
- This is a section with a heading
<section begin=test1 />This is a test.<section end=test1 /> Some text ... === Section by heading === This is a section with a heading
Lingo
Lingo is a glossary extension. It lets you define a list of abbreviations and their definitions on Terminology page and then displays these definitions whenever an abbreviation is hovered over in an article.
Check it below:
USA <- is abbreviations
LocalisationUpdate
No test was invented. The extension must be listed on Special:Version.
Lockdown
No test was invented. The extension must be listed on Special:Version.
Loops
- Note
- this extension requires that the Variables extension also be installed
- Test
- 123
- Expected
- 1 2 3
MagicNoCache
The table cell should be empty:
Maps
- Variant 1
- Test
- 52° 30' 58.57" N, 13° 22' 39.73" E
- Expected
- 52° 30' 58.59" N, 13° 22' 39.73" E
- Variant 2
- Test
- 52° 30' 58.57" N, 13° 22' 39.73" E
- Expected
- 52° 30' 58.59" N, 13° 22' 39.73" E
MasonryMainPage
Test |
---|
This should be orange |
Test2 |
---|
This should be blue and wider |
Test |
---|
This should be orange |
Test2 |
---|
This should be blue and wider |
Test |
---|
This should be orange |
Test2 |
---|
This should be blue and wider |
Test |
---|
This should be orange |
MobileFrontend
MultimediaViewer
Clicking this should pop up a nice lightbox image viewer or, in case MMV is disabled by default, this should open the file page with the Open in Media Viewer
button:
MyVariables
- Test
- 23.22.79.156
- Expected
- Your user name or the IP for anonymous users
Nuke
This should be a valid link: Special:Nuke
OpenGraphMeta
- Test
- Expected
OpenID Connect
No test was invented. The extension must be listed on Special:Version.
PDF Handler
You should see the content of the uploaded PDF (Overview of FamilySearch JMR2023.pdf):
Page Importer
No test was invented. The extension must be listed on Special:Version.
PageForms
This should be a valid link: Special:Forms
PageImages
Parser Function Helper
No test was invented. The extension must be listed on Special:Version.
ParserFunctions
- Test math functions
- 10
- Expected
- 10
- Test string functions
- 8
- Expected
- 8
ParserHooks
No test was invented. The extension must be listed on Special:Version.
Parsoid
No test was invented. The extension must be listed on Special:Version.
PluggableAuth
No test was invented. The extension must be listed on Special:Version.
Poem
- Test
Une terre au flanc maigre, âpre, avare, inclément
Où les vivants pensifs travaillent tristement,
Et qui donne à regret à cette race humaine
Un peu de pain pour tant de labeur et de peine ;
Des hommes durs, éclos sur ces sillons ingrats ;
Des cités d’où s’en vont, en se tordant les bras,
La charité, la paix, la foi, sœurs vénérables ;
L’orgueil chez les puissants et chez les misérables ;
- Expected
- A nicely formatted poem
Renameuser
This should be a valid link: Special:RenameUser
Replace Text
This should be a valid link: Special:ReplaceText
RevisionSlider
Check Browse history Interactively slider interface at the top of Difference between revisions page (history)
RottenLinks
This should be a valid link: Special:RottenLinks
SandboxLink
Sandbox link should be added on user's personal tools menu (at the top)
Scribunto
Module:String (source)
- Test
- 15
- Expected
- 15
Semantic Drilldown
This should be a valid link: Special:BrowseData
Semantic Internal Objects
{{#set_internal:Part of recipe |Has quantity=1 |Has unit=cup |Has ingredient=flour }}
- Expected: 1
- Actual:
Semantic Meeting Minutes
Special:FormEdit/Meeting Minutes must be a valid form.
SemanticCompoundQueries
This should produce no error:
- Isaías Coelho, Piauí, Brazil Genealogy (Modification date"Modification date" is a predefined property that corresponds to the date of the last modification of a subject and is provided by Semantic MediaWiki.: 8 December 2023 18:05:59)
SemanticMediaWiki
SemanticResultFormats
- Test (old wikis)
- Expected
- A nice-looking DataTable with a search field
SemanticScribunto
Should be an icon with information popup -> some text
This is sample outputThis is a warning
-- Module:SMW local p = {} -- set with direct return results function p.info( frame ) if not mw.smw then return "mw.smw module not found" end if frame.args[1] == nil then return "no parameter found" end local tooltip if frame.args[2] then tooltip = mw.smw.info( frame.args[1], frame.args[2] ) else tooltip = mw.smw.info( frame.args[1] ) end return tooltip end -- another example, info used inside another function function p.inlineInfo( frame ) local output = 'This is sample output' -- so some stuff output = output .. mw.smw.info( 'This is a warning', 'warning' ) -- some more stuff return output end return p
SimpleMathJax
- Note
- this extension does not work with the Math extension installed
- Test
- [math]\displaystyle{ \int_{(x,y)\in C} x^3\, dx + 4y^2\, dy }[/math]
- Expected
- ∫(x,y)∈Cx3dx+4y2dy (but much better-looking)
And if SMJ
added as $wgSmjExtraInlineMath = [ [ 'SMJ(', ')SMJ' ] ];
in LocalSettings.php file:
- Test
- SMJ(E=mc^2)SMJ
- Expected
- E=mc^2 (but much better-looking)
SpamBlacklist
This should display the spam blacklist log: spamblacklist.
SubPageList
- Result
1
- Expected
An integer matching the number of pages at Special:PrefixIndex/FamilySearch Wiki:Extension tests/
SyntaxHighlight
- Note
- this extension make also be referred to as "SyntaxHighlight GeSHi"
The following must be colorful:
def quick_sort(arr):
less = []
pivot_list = []
more = []
if len(arr) <= 1:
return arr
else:
pass
TemplateData
This link should take you to a page with the Manage TemplateData
button (normally below the first heading).
TextExtracts
The output should not contain Unrecognized parameter: exchars
error:
Thanks
Special:Log/thanks exists.
TitleBlacklist
- The text should follow
#This page is a list of regular expressions that will help prevent wiki spam #technical support spam .*support_for_.* .*Hpprintersupp(o|0)rt.* .*supp(o|0)rt helpline.* .*(help[ \.]+desk|phone)[ \.]+number.* .*customer care.* .*service (tech|supp(ort)).* .*customer service number.* .*tech(nical)?[ \.]+support.* .*helpservice.* .*1[ \-]\d{3}[ \-]\d{3}[ \-]\d{3}.* .*1[ \-\.]?8[0oO]{2}[ \-\.]?\d{3}[ \-\.]?\d{2}[0oO] .*(dell|hp|brother|canon) printer.* .*[I1][ \-~\.]?8[ \-~\.]?[0oO][ \-~\.]?[0oO][ \-~\.]?26[ \-~\.]?9[ \-~\.]?{I1][ \-~\.]?6[ \-~\.]?[0oO][ \-~\.]?8.* .*\b[I1]844.?46[I1].?2828\b.* .*[nN]orton [lL]ive [hH]elp.* .*(helpline|tech|s(ervice|upport)) (tele)?phone number.* .*(support|contact).?toll.?free.* .*0.800.098.8727.* .*gmail support.* .*quickbooks (customer|helpline|support).* .*Q\.u\.i\.c\.k\.b.* .*[Qq]uickbooks.* .*1800-?213-?2171.* .*1844-?203-?1044.* .*1-888-513-5978.* .*1-8OO-75O-6584.* .*1-800-750-6584.* .*Q\*U\*I\*C\*K\*B\*00K\*S.* .*supp0rt.* .*(help desk|support)(.?phone)?.?number.* .*c[\*\s\.]+u[\*\s\.]+s[\*\s\.]+t[\*\s\.]+o[\*\s\.]+m[\*\s\.]+e[\*\s\.]+r.* .*s[\*\s\.]+u[\*\s\.]+p[\*\s\.]+p[\*\s\.]+o[\*\s\.]+r[\*\s\.]+t.* .*n[\*\s\.]+u[\*\s\.]+m[\*\s\.]+b[\*\s\.]+e[\*\s\.]+r.* .*Sage.*Customer.* .*!!_USA_.* .*Quickbo\.oks.* .*Supp.ort_Pho.ne.* .*quikbooks.* .*q\su\si\sc\sk.* .*online solution.* .*[Qq]*[-~\*\. ]*u[-~\*\. ]*i[-~\*\. ]*c[-!~\*\. ]*k[-!~\*\. ]*b[-~\*!\. ]*[0oO][-!~\*\. ]*[0Oo][-!~\*\. ]*k[-~\*!\. ]*s.* .*Windows operating system.* .*\w[-\.\*\+\^~,`'\!]+\w[-\.\*\+\^~,`'\!]+\w[-\.\*\+\^~,`'\!]+\w[-\.\*\+\^~,`'\!]+.*
TwitterCards
No test was invented. The extension must be listed on Special:Version.
UniversalLanguageSelector
No test was invented. The language selector should appear somewhere and the extension must be listed on Special:Version.
Upload Wizard
UploadWizard is displayed at Special:UploadWizard
UserFunctions
- Test
- It works
- Expected
- It works
VEForAll
No test was invented. The extension must be listed on Special:Version.
Validator
No test was invented. The extension must be listed on Special:Version.
Variables
- Test
- testing
- Expected
- testing
VisualEditor
This should load VisualEditor in edit mode: edit
WhoIsWatching
Should show the number of watching users below:
Widgets
- Test
- Widget
- Expected
- Widget
WikiEditor
This should load a tabbed WikiEditor: edit
WikiSEO
The page source should contain:
<title>Your page title</title>
and:
<meta name="keywords" content="these,are,your,keywords"/>
There should also be a description, with
<meta name="description" content="Your meta description"/>
but the content may be different if another extension (like Description2) is installed and tries to set the description. As long as there is a description set and the page title and keywords match, having a different description should not be considered a failure.
Wiretap
This should be a valid link: Special:Wiretap
YouTube