<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="it">
	<id>https://integration-ru.familysearch.org/it/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Wikiadmin</id>
	<title>FamilySearch Wiki - Contributi dell'utente [it]</title>
	<link rel="self" type="application/atom+xml" href="https://integration-ru.familysearch.org/it/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Wikiadmin"/>
	<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/Speciale:Contributi/Wikiadmin"/>
	<updated>2026-05-13T03:57:29Z</updated>
	<subtitle>Contributi dell'utente</subtitle>
	<generator>MediaWiki 1.39.11</generator>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2482</id>
		<title>FamilySearch Wiki:Extension tests</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2482"/>
		<updated>2024-12-09T21:44:11Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: /* Semantic Meeting Minutes */ update test&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following are tests of the extensions running on the wiki. Where applicable, if the &amp;quot;Test&amp;quot; value matches the &amp;quot;Expected&amp;quot; value, the extension can be assumed to be working.&lt;br /&gt;
[[Category:Tests]]&lt;br /&gt;
&lt;br /&gt;
== Admin Links ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:AdminLinks]]&lt;br /&gt;
&lt;br /&gt;
If you are an admin, you should see links by your personal tools.&lt;br /&gt;
&lt;br /&gt;
== AdvancedSearch ==&lt;br /&gt;
If [[#CirrusSearch]] is enabled, the extension produces the &amp;quot;Advanced Search&amp;quot; form on Special:Search. &lt;br /&gt;
&lt;br /&gt;
== Approved Revs==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ApprovedRevs]] &lt;br /&gt;
&lt;br /&gt;
== Arrays ==&lt;br /&gt;
{{#arraydefine:b|orange,red ,yellow, yellow}}&lt;br /&gt;
; Test&lt;br /&gt;
: {{#arrayprint:b}}&lt;br /&gt;
; Expected&lt;br /&gt;
: orange, red, yellow, yellow&lt;br /&gt;
&lt;br /&gt;
== BatchUserRights ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BatchUserRights]]&lt;br /&gt;
&lt;br /&gt;
== Bootstrap ==&lt;br /&gt;
:This test should be done while using the Chameleon skin; [{{fullurl:{{FULLPAGENAME}}|useskin=chameleon}} view page with useskin=chameleon]&lt;br /&gt;
This should be a greeny shadowed alert box with white text:&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-success shadow text-white font-weight-bold&amp;quot;&amp;gt;&lt;br /&gt;
I am bootstrapped&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== BootstrapComponents ==&lt;br /&gt;
Should be an accordion below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;bootstrap_accordion&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel1&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel2&amp;quot; color=&amp;quot;danger&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel3&amp;quot; active&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel4&amp;quot; color=&amp;quot;info&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
&amp;lt;/bootstrap_accordion&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Cargo ==&lt;br /&gt;
The [[Special:CargoTables]] should exist&lt;br /&gt;
&lt;br /&gt;
== CategoryTree ==&lt;br /&gt;
A category tree should be shown:&lt;br /&gt;
&amp;lt;categorytree mode=pages&amp;gt;Tests&amp;lt;/categorytree&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CharInsert ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;charinsert&amp;gt;Á&amp;lt;/charinsert&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt; [{{fullurl:{{FULLPAGENAME}}}}# Á]&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CirrusSearch ==&lt;br /&gt;
;For semantic wikis&lt;br /&gt;
The search results should display &amp;quot;'''ask'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+%23ask%3A&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
;For Cite enabled wikis&lt;br /&gt;
The search results should display &amp;quot;'''ref'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+ref&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
== Cite ==&lt;br /&gt;
; Test&lt;br /&gt;
: Text&amp;lt;ref&amp;gt;Test&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: Text&amp;lt;sup id=&amp;quot;cite_ref-1&amp;quot; class=&amp;quot;reference plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_note-1}} [1]]&amp;lt;/sup&amp;gt;&lt;br /&gt;
&amp;lt;ol class=&amp;quot;references&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li id=&amp;quot;cite_note-1&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;mw-cite-backlink plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_ref-1}} &amp;lt;span class=&amp;quot;cite-accessibility-label&amp;quot;&amp;gt;Jump up &amp;lt;/span&amp;gt;↑]&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;reference-text&amp;quot;&amp;gt;Test&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CiteThisPage ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:CiteThisPage]]&lt;br /&gt;
&lt;br /&gt;
== CodeEditor ==&lt;br /&gt;
This should open in the ACE editor interface:&lt;br /&gt;
[{{fullurl: Mediawiki:Common.css|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== CodeMirror ==&lt;br /&gt;
* The &amp;quot;Editing&amp;quot; tab on [[Special:Preferences]] should have the &amp;quot;Enable colorblind-friendly mode&amp;quot; checkbox (&amp;quot;Accessibility&amp;quot; section). &lt;br /&gt;
&lt;br /&gt;
== ContributionScores ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ContributionScores]]&lt;br /&gt;
&lt;br /&gt;
== Data Transfer ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ImportCSV]]&lt;br /&gt;
&lt;br /&gt;
== Description2 ==&lt;br /&gt;
This should produce &amp;quot;Description2 works!&amp;quot; in the description meta tag of this page head.&lt;br /&gt;
{{#description2:Description2 works!}}&lt;br /&gt;
&lt;br /&gt;
== DismissableSiteNotice ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.dismissableSiteNotice&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.dismissableSiteNotice');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== DisplayTitle==&lt;br /&gt;
;Expected: &lt;br /&gt;
{{FULLPAGENAME}}&lt;br /&gt;
;Result:&lt;br /&gt;
{{#getdisplaytitle:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Echo ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Notifications]]&lt;br /&gt;
&lt;br /&gt;
== Elastica ==&lt;br /&gt;
Usually, it is a dependency of CirrusSearch. If CirrusSearch test is passed, Elastica works. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== EmailFile ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailFile]]&lt;br /&gt;
&lt;br /&gt;
== EmailRegisteredUsers ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailRegisteredUsers]]&lt;br /&gt;
&lt;br /&gt;
== External Data ==&lt;br /&gt;
{{#get_web_data:url=https://www.semantic-mediawiki.org/wiki/Special:Ask/-5B-5BGermany-5D-5D/-3FLocated_in/format%3Dcsv/sep%3D,&lt;br /&gt;
    |format=csv with header|data=Located in=Located in}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#external_value:Located in}}&lt;br /&gt;
;Expected :Europe&lt;br /&gt;
&lt;br /&gt;
== FixedHeaderTable ==&lt;br /&gt;
Header of table below should be fixed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;fixedheadertable fixedcolumns=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header 1&lt;br /&gt;
! Header 2 &lt;br /&gt;
|- &lt;br /&gt;
| Cell 1&lt;br /&gt;
| Cell 2&lt;br /&gt;
|- &lt;br /&gt;
| Cell 3&lt;br /&gt;
| Cell 4&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/fixedheadertable&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FsLookAndFeel ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.fslookandfeel.scripts&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.fslookandfeel.scripts');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== FsSignin ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Gadgets ==&lt;br /&gt;
* [{{fullurl: Special:AllPages|from=&amp;amp;to=&amp;amp;namespace=2300}} This link] must '''not contain''' the error message &amp;quot;&amp;lt;code&amp;gt;{{SITENAME}} does not have namespace &amp;quot;2300&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
* {{#ifeq: {{NAMESPACENUMBER:Gadget:Something}}|2300|You have gadgets!|No gadgets or something went unusual...}}&lt;br /&gt;
&lt;br /&gt;
== GlobalNotice ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== GoogleTranslator ==&lt;br /&gt;
The sidebar should include an option to translate the page into different languages.&lt;br /&gt;
&lt;br /&gt;
== Header Tabs ==&lt;br /&gt;
Two tabs should be visible below.&lt;br /&gt;
= Test =&lt;br /&gt;
Content&lt;br /&gt;
= Test2 =&lt;br /&gt;
More content&lt;br /&gt;
&amp;lt;headertabs /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ImageMap ==&lt;br /&gt;
&amp;lt;imagemap&amp;gt;&lt;br /&gt;
Image:JoshuaReynoldsParty.jpg|thumb|center|400px|alt=Dining room with nine men seated around a table. The dinner has been finished, and a large man at the head talks and gesticulates while the others eagerly listen. The men wear wigs and clothing of late 18th century Britain, and the furniture, hangings, and chandelier are of similar vintage. A liveried servant is entering with a tray bearing two high-shouldered decanters of wine.|Image map example. Clicking on a person in the picture causes the browser to load the appropriate article.&lt;br /&gt;
&lt;br /&gt;
poly 133 343 124 287 159 224 189 228 195 291 222 311 209 343 209 354 243 362 292 466 250 463 [[wikipedia:Samuel Johnson|Dr Johnson - Dictionary writer]]&lt;br /&gt;
poly 76 224 84 255 43 302 62 400 123 423 121 361 137 344 122 290 111 234 96 225 [[wikipedia:James Boswell|Boswell - Biographer]]&lt;br /&gt;
poly 190 276 208 240 229 228 247 238 250 258 286 319 282 323 223 323 220 301 200 295 [[wikipedia:Joshua Reynolds|Sir Joshua Reynolds - Host]]&lt;br /&gt;
poly 308 317 311 270 328 261 316 246 320 228 343 227 357 240 377 274 366 284 352 311 319 324 [[wikipedia:David Garrick|David Garrick - actor]]&lt;br /&gt;
poly 252 406 313 343 341 343 366 280 383 273 372 251 378 222 409 228 414 280 420 292 390 300 374 360 359 437 306 418 313 391 272 415 [[wikipedia:Edmund Burke|Edmund Burke - statesman]]&lt;br /&gt;
rect 418 220 452 287 [[wikipedia:Pasquale Paoli|Pasqual Paoli - Corsican patriot]]&lt;br /&gt;
poly 455 238 484 253 505 303 495 363 501 377 491 443 429 439 423 375 466 352 [[wikipedia:Charles Burney|Charles Burney - music historian]]&lt;br /&gt;
poly 501 279 546 237 567 239 572 308 560 326 537 316 530 300 502 289 [[wikipedia:Thomas Warton|Thomas Warton - poet laureate]]&lt;br /&gt;
poly 572 453 591 446 572 373 603 351 562 325 592 288 573 260 573 248 591 243 615 254 637 280 655 334 705 396 656 419 625 382 609 391 613 453 [[wikipedia:Oliver Goldsmith|Oliver Goldsmith - writer]]&lt;br /&gt;
rect 450 86 584 188 [[wikipedia:Joshua Reynolds|prob.The Infant Academy 1782]]&lt;br /&gt;
rect 286 87 376 191 [[wikipedia:Joshua Reynolds|unknown painting]]&lt;br /&gt;
circle 100 141 20 [[wikipedia:Joshua Reynolds|An unknown portrait]]&lt;br /&gt;
poly 503 192 511 176 532 176 534 200 553 219 554 234 541 236 525 261 506 261 511 220 515 215 [[wikipedia:Francis Barber|servant - poss. Francis Barber]]&lt;br /&gt;
rect 12 10 702 500 [[wikipedia:The Club (Literary Club)|Use button to enlarge or use hyperlinks]]&lt;br /&gt;
&amp;lt;/imagemap&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== InputBox ==&lt;br /&gt;
; Test&lt;br /&gt;
&amp;lt;inputbox&amp;gt;&lt;br /&gt;
type=create&lt;br /&gt;
break=no&lt;br /&gt;
&amp;lt;/inputbox&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: An input box&lt;br /&gt;
&lt;br /&gt;
== Interwiki ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Interwiki]]&lt;br /&gt;
&lt;br /&gt;
== LabeledSectionTransclusion ==&lt;br /&gt;
;Test&amp;amp;#160;:{{#lst:{{FULLPAGENAME}}/Labeled Section Transclusion|test1}}&lt;br /&gt;
;Expected :This is a test.&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' In this case, the &amp;quot;Section by heading&amp;quot; must be a section in the page that is to be transcluded.&lt;br /&gt;
;Test&amp;amp;#160;:{{#lsth:{{FULLPAGENAME}}/Labeled Section Transclusion|Section by heading}}&lt;br /&gt;
;Expected :This is a section with a heading&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[{{FULLPAGENAME}}/Labeled Section Transclusion]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;section begin=test1 /&amp;gt;This is a test.&amp;lt;section end=test1 /&amp;gt;&lt;br /&gt;
Some text ...&lt;br /&gt;
&lt;br /&gt;
=== Section by heading ===&lt;br /&gt;
This is a section with a heading&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Lingo ==&lt;br /&gt;
Lingo is a glossary extension. It lets you define a list of abbreviations and their definitions on [[{{MediaWiki:Lingo-terminologypagename}}]] page and then displays these definitions whenever an abbreviation is hovered over in an article. &lt;br /&gt;
&lt;br /&gt;
Check it below:&lt;br /&gt;
&lt;br /&gt;
USA &amp;lt;- is abbreviations&lt;br /&gt;
&lt;br /&gt;
== LocalisationUpdate ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Lockdown ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Loops ==&lt;br /&gt;
; Note: this extension requires that the Variables extension also be installed&lt;br /&gt;
;Test&amp;amp;#160;: {{#vardefine: i | 1 }}{{#while:&lt;br /&gt;
 | {{#ifexpr: {{#var: i }} &amp;lt; 4 | true }}&lt;br /&gt;
 | &lt;br /&gt;
{{#var: i }} {{#vardefine: i | {{#expr: {{#var: i }} + 1 }} }}&lt;br /&gt;
}}&lt;br /&gt;
;Expected&amp;amp;#160;: 1  2  3&lt;br /&gt;
&lt;br /&gt;
== MagicNoCache ==&lt;br /&gt;
The table cell should be empty:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|__NOCACHE__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Maps ==&lt;br /&gt;
;Variant 1&lt;br /&gt;
{{#display_map:address=Brandenburg Gate, Berlin, Germany|width=200|height=150|zoom=17|type=hybrid}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate, Berlin, Germany}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
;Variant 2&lt;br /&gt;
{{#display_map: Brandenburg Gate, Berlin~Brandenburg Gate }}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
== MasonryMainPage ==&lt;br /&gt;
&amp;lt;div id=&amp;quot;mediawiki-masonry-main-page-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== MobileFrontend ==&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_mobile}} This link] should open '''mobile''' version&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_desktop}} This link] should open '''desktop''' version&lt;br /&gt;
&lt;br /&gt;
== MultimediaViewer ==&lt;br /&gt;
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 &amp;lt;code&amp;gt;Open in Media Viewer&amp;lt;/code&amp;gt; button:&lt;br /&gt;
:[[File:JoshuaReynoldsParty.jpg|50px]]&lt;br /&gt;
&lt;br /&gt;
== MyVariables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{CURRENTUSER}} &lt;br /&gt;
; Expected&amp;amp;#160;: Your user name or the IP for anonymous users&lt;br /&gt;
&lt;br /&gt;
== Nuke ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Nuke]]&lt;br /&gt;
&lt;br /&gt;
== OpenGraphMeta ==&lt;br /&gt;
;Test&lt;br /&gt;
[[File:{{#setmainimage:JoshuaReynoldsParty.jpg}}|100px]]&lt;br /&gt;
;Expected:&lt;br /&gt;
[[File:JoshuaReynoldsParty.jpg|100px]]&lt;br /&gt;
&lt;br /&gt;
== OpenID Connect ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PDF Handler ==&lt;br /&gt;
You should see the content of the uploaded PDF ([[media:Imported_vocabulary.pdf|Imported_vocabulary.pdf]]):&lt;br /&gt;
&lt;br /&gt;
[[File:Imported_vocabulary.pdf|page=1|200px|Succeeded]]&lt;br /&gt;
&lt;br /&gt;
== Page Importer ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PageForms ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Forms]]&lt;br /&gt;
&lt;br /&gt;
== PageImages ==&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=pageimages&amp;amp;titles={{PAGENAMEE}} This must not fire a warning about pageimages]&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=help&amp;amp;modules=query This should list '''pageimages''' property]&lt;br /&gt;
&lt;br /&gt;
== Parser Function Helper ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== ParserFunctions ==&lt;br /&gt;
; Test math functions: {{#expr: 4 + 6}}&lt;br /&gt;
; Expected&amp;amp;#160;: 10&lt;br /&gt;
&lt;br /&gt;
; Test string functions: {{#ifeq:{{#expr: 4 + 6}}|10|{{#ifeq:{{#len:Icecream }}|8|{{#len:Icecream }}|disabled}}}}&lt;br /&gt;
; Expected&amp;amp;#160;: {{#ifeq:{{#len:Icecream }}|8|8|disabled}}&lt;br /&gt;
&lt;br /&gt;
== ParserHooks ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Parsoid ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PluggableAuth ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Poem ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;poem&amp;gt;&lt;br /&gt;
Une terre au flanc maigre, âpre, avare, inclément&lt;br /&gt;
Où les vivants pensifs travaillent tristement, &lt;br /&gt;
::Et qui donne à regret à cette race humaine&lt;br /&gt;
Un peu de pain pour tant de labeur et de peine&amp;amp;#160;; &lt;br /&gt;
::Des hommes durs, éclos sur ces sillons ingrats&amp;amp;#160;; &lt;br /&gt;
Des cités d’où s’en vont, en se tordant les bras, &lt;br /&gt;
::La charité, la paix, la foi, sœurs vénérables&amp;amp;#160;; &lt;br /&gt;
L’orgueil chez les puissants et chez les misérables&amp;amp;#160;; &lt;br /&gt;
&amp;lt;/poem&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: A nicely formatted poem&lt;br /&gt;
&lt;br /&gt;
== Renameuser ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RenameUser]]&lt;br /&gt;
&lt;br /&gt;
== Replace Text ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ReplaceText]]&lt;br /&gt;
&lt;br /&gt;
== RevisionSlider ==&lt;br /&gt;
Check '''Browse history Interactively''' slider interface at the top of ''Difference between revisions'' page ([{{fullurl:{{FULLPAGENAME}}|action=history}} history])&lt;br /&gt;
&lt;br /&gt;
== RottenLinks ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RottenLinks]]&lt;br /&gt;
&lt;br /&gt;
== SandboxLink ==&lt;br /&gt;
'''Sandbox''' link should be added on user's personal tools menu (at the top)&lt;br /&gt;
&lt;br /&gt;
== Scribunto ==&lt;br /&gt;
=== [[Module:String]] ===&lt;br /&gt;
; Test&amp;amp;#160;: {{#invoke:String|len|This is a test.}} &lt;br /&gt;
; Expected&amp;amp;#160;: 15&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:String]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
local p = {}&lt;br /&gt;
function p.len(frame)&lt;br /&gt;
	local s = frame.args[1]&lt;br /&gt;
	return mw.ustring.len( s )&lt;br /&gt;
end&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Semantic Drilldown ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BrowseData]]&lt;br /&gt;
&lt;br /&gt;
== Semantic Meeting Minutes ==&lt;br /&gt;
;Test: {{#synopsize:&lt;br /&gt;
Only this line should show, with no lines after it&lt;br /&gt;
&lt;br /&gt;
This line should '''not''' show&lt;br /&gt;
|9999&lt;br /&gt;
|1}}&lt;br /&gt;
;Expected: Only this line should show, with no lines after it&lt;br /&gt;
&lt;br /&gt;
== SemanticCompoundQueries ==&lt;br /&gt;
This should produce no error:&lt;br /&gt;
{{#compound_query: [[:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |[[File:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |link=none&lt;br /&gt;
 |format=ul&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== SemanticMediaWiki ==&lt;br /&gt;
; Test&amp;amp;#160;:[[Test::NONEXISTENTPAGE|Test]] __SHOWFACTBOX__&lt;br /&gt;
; Expected&amp;amp;#160;:[[NONEXISTENTPAGE|Test]]&lt;br /&gt;
: There should be a factbox at the page bottom.&lt;br /&gt;
&lt;br /&gt;
== SemanticResultFormats ==&lt;br /&gt;
; Test (old wikis)&lt;br /&gt;
{{#ask:[[{{FULLPAGENAME}}]]|?Test|format=datatables}}&lt;br /&gt;
; Expected&lt;br /&gt;
: A nice-looking DataTable with a search field&lt;br /&gt;
&lt;br /&gt;
== SemanticScribunto ==&lt;br /&gt;
&lt;br /&gt;
Should be an icon with information popup -&amp;gt; {{#invoke:SemanticScribuntoTest|info|some text}}&lt;br /&gt;
&lt;br /&gt;
{{#invoke:SemanticScribuntoTest|inlineInfo}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:SemanticScribuntoTest]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-- Module:SMW&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
-- set with direct return results&lt;br /&gt;
function p.info( frame )&lt;br /&gt;
&lt;br /&gt;
    if not mw.smw then&lt;br /&gt;
        return &amp;quot;mw.smw module not found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if frame.args[1] == nil then&lt;br /&gt;
        return &amp;quot;no parameter found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    local tooltip&lt;br /&gt;
    if frame.args[2] then&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1], frame.args[2] )&lt;br /&gt;
    else&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1] )&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    return tooltip&lt;br /&gt;
end&lt;br /&gt;
-- another example, info used inside another function&lt;br /&gt;
function p.inlineInfo( frame )&lt;br /&gt;
&lt;br /&gt;
    local output = 'This is sample output'&lt;br /&gt;
&lt;br /&gt;
    -- so some stuff&lt;br /&gt;
&lt;br /&gt;
    output = output .. mw.smw.info( 'This is a warning', 'warning' )&lt;br /&gt;
&lt;br /&gt;
    -- some more stuff&lt;br /&gt;
&lt;br /&gt;
    return output&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SimpleMathJax ==&lt;br /&gt;
; Note: this extension does not work with the Math extension installed&lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;math&amp;gt;\int_{(x,y)\in C} x^3\, dx + 4y^2\, dy&amp;lt;/math&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: ∫(x,y)∈Cx3dx+4y2dy (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
And if &amp;lt;code&amp;gt;SMJ&amp;lt;/code&amp;gt; added as &amp;lt;code&amp;gt;$wgSmjExtraInlineMath = [ [ 'SMJ(', ')SMJ' ] ];&amp;lt;/code&amp;gt; in LocalSettings.php file: &lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: SMJ(E=mc^2)SMJ&lt;br /&gt;
; Expected&lt;br /&gt;
: E=mc^2 (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
== SpamBlacklist ==&lt;br /&gt;
This should display the spam blacklist log: [{{fullurl:Special:Log|type=spamblacklist}} spamblacklist].&lt;br /&gt;
&lt;br /&gt;
== SubPageList ==&lt;br /&gt;
;Result&lt;br /&gt;
{{#subpagecount: }}&lt;br /&gt;
;Expected&lt;br /&gt;
An integer matching the number of pages at [[Special:PrefixIndex/{{FULLPAGENAME}}/]]&lt;br /&gt;
&lt;br /&gt;
== SyntaxHighlight ==&lt;br /&gt;
; Note: this extension make also be referred to as &amp;quot;SyntaxHighlight GeSHi&amp;quot;&lt;br /&gt;
The following must be colorful:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line start=3 highlight=&amp;quot;1,5-7&amp;quot;&amp;gt;&lt;br /&gt;
def quick_sort(arr):&lt;br /&gt;
	less = []&lt;br /&gt;
	pivot_list = []&lt;br /&gt;
	more = []&lt;br /&gt;
	if len(arr) &amp;lt;= 1:&lt;br /&gt;
		return arr&lt;br /&gt;
	else:&lt;br /&gt;
		pass&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TemplateData ==&lt;br /&gt;
[{{fullurl:Template:Test|action=edit}} This link should take you to a page with the &amp;lt;code&amp;gt;Manage TemplateData&amp;lt;/code&amp;gt; button] (normally below the first heading).&lt;br /&gt;
&lt;br /&gt;
== TextExtracts ==&lt;br /&gt;
The output should not contain &amp;lt;code&amp;gt;Unrecognized parameter: exchars&amp;lt;/code&amp;gt; error:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=extracts&amp;amp;exchars=175&amp;amp;format=json&amp;amp;titles={{FULLPAGENAMEE}} Extract]&lt;br /&gt;
&lt;br /&gt;
== Thanks ==&lt;br /&gt;
[[Special:Log/thanks]] exists.&lt;br /&gt;
&lt;br /&gt;
== TitleBlacklist ==&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=help&amp;amp;modules=titleblacklist This should document the '''titleblacklist''' API]&lt;br /&gt;
&lt;br /&gt;
== TwitterCards ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== UniversalLanguageSelector ==&lt;br /&gt;
No test was invented. The language selector should appear somewhere and the extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Upload Wizard ==&lt;br /&gt;
UploadWizard is displayed at [[:Special:UploadWizard]]&lt;br /&gt;
&lt;br /&gt;
== UserFunctions ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#ifanon:It works|It works}}&lt;br /&gt;
; Expected&amp;amp;#160;: It works&lt;br /&gt;
&lt;br /&gt;
== VEForAll ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Validator ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Variables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#vardefine:test|testing}}{{#var:test}}&lt;br /&gt;
; Expected&amp;amp;#160;: testing&lt;br /&gt;
&lt;br /&gt;
== VisualEditor ==&lt;br /&gt;
This should load VisualEditor in edit mode:&lt;br /&gt;
[{{fullurl:Main Page|veaction=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WhoIsWatching ==&lt;br /&gt;
Should show the number of watching users below:&lt;br /&gt;
&lt;br /&gt;
{{#whoiswatching:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Widgets ==&lt;br /&gt;
;Test&lt;br /&gt;
:{{ns:Widget}}&lt;br /&gt;
;Expected&lt;br /&gt;
:Widget&lt;br /&gt;
&lt;br /&gt;
== WikiEditor ==&lt;br /&gt;
This should load a tabbed WikiEditor:&lt;br /&gt;
[{{fullurl:Main Page|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WikiSEO ==&lt;br /&gt;
{{#seo:&lt;br /&gt;
|title=Your page title&lt;br /&gt;
|titlemode=append&lt;br /&gt;
|keywords=these,are,your,keywords&lt;br /&gt;
|description=Your meta description&lt;br /&gt;
}}&lt;br /&gt;
The page source should contain:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Your page title&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;keywords&amp;quot; content=&amp;quot;these,are,your,keywords&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There should also be a description, with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;description&amp;quot; content=&amp;quot;Your meta description&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== Wiretap ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Wiretap]]&lt;br /&gt;
&lt;br /&gt;
== YouTube ==&lt;br /&gt;
&amp;lt;youtube&amp;gt;VyBSS48E4xI&amp;lt;/youtube&amp;gt;&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2466</id>
		<title>FamilySearch Wiki:Extension tests</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2466"/>
		<updated>2023-11-20T02:48:31Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: /* TitleBlacklist */ update test&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following are tests of the extensions running on the wiki. Where applicable, if the &amp;quot;Test&amp;quot; value matches the &amp;quot;Expected&amp;quot; value, the extension can be assumed to be working.&lt;br /&gt;
[[Category:Tests]]&lt;br /&gt;
&lt;br /&gt;
== Admin Links ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:AdminLinks]]&lt;br /&gt;
&lt;br /&gt;
If you are an admin, you should see links by your personal tools.&lt;br /&gt;
&lt;br /&gt;
== AdvancedSearch ==&lt;br /&gt;
If [[#CirrusSearch]] is enabled, the extension produces the &amp;quot;Advanced Search&amp;quot; form on Special:Search. &lt;br /&gt;
&lt;br /&gt;
== Approved Revs==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ApprovedRevs]] &lt;br /&gt;
&lt;br /&gt;
== Arrays ==&lt;br /&gt;
{{#arraydefine:b|orange,red ,yellow, yellow}}&lt;br /&gt;
; Test&lt;br /&gt;
: {{#arrayprint:b}}&lt;br /&gt;
; Expected&lt;br /&gt;
: orange, red, yellow, yellow&lt;br /&gt;
&lt;br /&gt;
== BatchUserRights ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BatchUserRights]]&lt;br /&gt;
&lt;br /&gt;
== Bootstrap ==&lt;br /&gt;
:This test should be done while using the Chameleon skin; [{{fullurl:{{FULLPAGENAME}}|useskin=chameleon}} view page with useskin=chameleon]&lt;br /&gt;
This should be a greeny shadowed alert box with white text:&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-success shadow text-white font-weight-bold&amp;quot;&amp;gt;&lt;br /&gt;
I am bootstrapped&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== BootstrapComponents ==&lt;br /&gt;
Should be an accordion below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;bootstrap_accordion&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel1&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel2&amp;quot; color=&amp;quot;danger&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel3&amp;quot; active&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel4&amp;quot; color=&amp;quot;info&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
&amp;lt;/bootstrap_accordion&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Cargo ==&lt;br /&gt;
The [[Special:CargoTables]] should exist&lt;br /&gt;
&lt;br /&gt;
== CategoryTree ==&lt;br /&gt;
A category tree should be shown:&lt;br /&gt;
&amp;lt;categorytree mode=pages&amp;gt;Tests&amp;lt;/categorytree&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CharInsert ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;charinsert&amp;gt;Á&amp;lt;/charinsert&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt; [{{fullurl:{{FULLPAGENAME}}}}# Á]&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CirrusSearch ==&lt;br /&gt;
;For semantic wikis&lt;br /&gt;
The search results should display &amp;quot;'''ask'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+%23ask%3A&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
;For Cite enabled wikis&lt;br /&gt;
The search results should display &amp;quot;'''ref'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+ref&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
== Cite ==&lt;br /&gt;
; Test&lt;br /&gt;
: Text&amp;lt;ref&amp;gt;Test&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: Text&amp;lt;sup id=&amp;quot;cite_ref-1&amp;quot; class=&amp;quot;reference plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_note-1}} [1]]&amp;lt;/sup&amp;gt;&lt;br /&gt;
&amp;lt;ol class=&amp;quot;references&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li id=&amp;quot;cite_note-1&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;mw-cite-backlink plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_ref-1}} &amp;lt;span class=&amp;quot;cite-accessibility-label&amp;quot;&amp;gt;Jump up &amp;lt;/span&amp;gt;↑]&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;reference-text&amp;quot;&amp;gt;Test&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CiteThisPage ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:CiteThisPage]]&lt;br /&gt;
&lt;br /&gt;
== CodeEditor ==&lt;br /&gt;
This should open in the ACE editor interface:&lt;br /&gt;
[{{fullurl: Mediawiki:Common.css|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== CodeMirror ==&lt;br /&gt;
* The &amp;quot;Editing&amp;quot; tab on [[Special:Preferences]] should have the &amp;quot;Enable colorblind-friendly mode&amp;quot; checkbox (&amp;quot;Accessibility&amp;quot; section). &lt;br /&gt;
&lt;br /&gt;
== ContributionScores ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ContributionScores]]&lt;br /&gt;
&lt;br /&gt;
== Data Transfer ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ImportCSV]]&lt;br /&gt;
&lt;br /&gt;
== Description2 ==&lt;br /&gt;
This should produce &amp;quot;Description2 works!&amp;quot; in the description meta tag of this page head.&lt;br /&gt;
{{#description2:Description2 works!}}&lt;br /&gt;
&lt;br /&gt;
== DismissableSiteNotice ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.dismissableSiteNotice&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.dismissableSiteNotice');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== DisplayTitle==&lt;br /&gt;
;Expected: &lt;br /&gt;
{{FULLPAGENAME}}&lt;br /&gt;
;Result:&lt;br /&gt;
{{#getdisplaytitle:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Echo ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Notifications]]&lt;br /&gt;
&lt;br /&gt;
== Elastica ==&lt;br /&gt;
Usually, it is a dependency of CirrusSearch. If CirrusSearch test is passed, Elastica works. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== EmailFile ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailFile]]&lt;br /&gt;
&lt;br /&gt;
== EmailRegisteredUsers ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailRegisteredUsers]]&lt;br /&gt;
&lt;br /&gt;
== External Data ==&lt;br /&gt;
{{#get_web_data:url=https://www.semantic-mediawiki.org/wiki/Special:Ask/-5B-5BGermany-5D-5D/-3FLocated_in/format%3Dcsv/sep%3D,&lt;br /&gt;
    |format=csv with header|data=Located in=Located in}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#external_value:Located in}}&lt;br /&gt;
;Expected :Europe&lt;br /&gt;
&lt;br /&gt;
== FixedHeaderTable ==&lt;br /&gt;
Header of table below should be fixed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;fixedheadertable fixedcolumns=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header 1&lt;br /&gt;
! Header 2 &lt;br /&gt;
|- &lt;br /&gt;
| Cell 1&lt;br /&gt;
| Cell 2&lt;br /&gt;
|- &lt;br /&gt;
| Cell 3&lt;br /&gt;
| Cell 4&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/fixedheadertable&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FsLookAndFeel ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.fslookandfeel.scripts&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.fslookandfeel.scripts');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== FsSignin ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Gadgets ==&lt;br /&gt;
* [{{fullurl: Special:AllPages|from=&amp;amp;to=&amp;amp;namespace=2300}} This link] must '''not contain''' the error message &amp;quot;&amp;lt;code&amp;gt;{{SITENAME}} does not have namespace &amp;quot;2300&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
* {{#ifeq: {{NAMESPACENUMBER:Gadget:Something}}|2300|You have gadgets!|No gadgets or something went unusual...}}&lt;br /&gt;
&lt;br /&gt;
== GlobalNotice ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== GoogleTranslator ==&lt;br /&gt;
The sidebar should include an option to translate the page into different languages.&lt;br /&gt;
&lt;br /&gt;
== Header Tabs ==&lt;br /&gt;
Two tabs should be visible below.&lt;br /&gt;
= Test =&lt;br /&gt;
Content&lt;br /&gt;
= Test2 =&lt;br /&gt;
More content&lt;br /&gt;
&amp;lt;headertabs /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ImageMap ==&lt;br /&gt;
&amp;lt;imagemap&amp;gt;&lt;br /&gt;
Image:JoshuaReynoldsParty.jpg|thumb|center|400px|alt=Dining room with nine men seated around a table. The dinner has been finished, and a large man at the head talks and gesticulates while the others eagerly listen. The men wear wigs and clothing of late 18th century Britain, and the furniture, hangings, and chandelier are of similar vintage. A liveried servant is entering with a tray bearing two high-shouldered decanters of wine.|Image map example. Clicking on a person in the picture causes the browser to load the appropriate article.&lt;br /&gt;
&lt;br /&gt;
poly 133 343 124 287 159 224 189 228 195 291 222 311 209 343 209 354 243 362 292 466 250 463 [[wikipedia:Samuel Johnson|Dr Johnson - Dictionary writer]]&lt;br /&gt;
poly 76 224 84 255 43 302 62 400 123 423 121 361 137 344 122 290 111 234 96 225 [[wikipedia:James Boswell|Boswell - Biographer]]&lt;br /&gt;
poly 190 276 208 240 229 228 247 238 250 258 286 319 282 323 223 323 220 301 200 295 [[wikipedia:Joshua Reynolds|Sir Joshua Reynolds - Host]]&lt;br /&gt;
poly 308 317 311 270 328 261 316 246 320 228 343 227 357 240 377 274 366 284 352 311 319 324 [[wikipedia:David Garrick|David Garrick - actor]]&lt;br /&gt;
poly 252 406 313 343 341 343 366 280 383 273 372 251 378 222 409 228 414 280 420 292 390 300 374 360 359 437 306 418 313 391 272 415 [[wikipedia:Edmund Burke|Edmund Burke - statesman]]&lt;br /&gt;
rect 418 220 452 287 [[wikipedia:Pasquale Paoli|Pasqual Paoli - Corsican patriot]]&lt;br /&gt;
poly 455 238 484 253 505 303 495 363 501 377 491 443 429 439 423 375 466 352 [[wikipedia:Charles Burney|Charles Burney - music historian]]&lt;br /&gt;
poly 501 279 546 237 567 239 572 308 560 326 537 316 530 300 502 289 [[wikipedia:Thomas Warton|Thomas Warton - poet laureate]]&lt;br /&gt;
poly 572 453 591 446 572 373 603 351 562 325 592 288 573 260 573 248 591 243 615 254 637 280 655 334 705 396 656 419 625 382 609 391 613 453 [[wikipedia:Oliver Goldsmith|Oliver Goldsmith - writer]]&lt;br /&gt;
rect 450 86 584 188 [[wikipedia:Joshua Reynolds|prob.The Infant Academy 1782]]&lt;br /&gt;
rect 286 87 376 191 [[wikipedia:Joshua Reynolds|unknown painting]]&lt;br /&gt;
circle 100 141 20 [[wikipedia:Joshua Reynolds|An unknown portrait]]&lt;br /&gt;
poly 503 192 511 176 532 176 534 200 553 219 554 234 541 236 525 261 506 261 511 220 515 215 [[wikipedia:Francis Barber|servant - poss. Francis Barber]]&lt;br /&gt;
rect 12 10 702 500 [[wikipedia:The Club (Literary Club)|Use button to enlarge or use hyperlinks]]&lt;br /&gt;
&amp;lt;/imagemap&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== InputBox ==&lt;br /&gt;
; Test&lt;br /&gt;
&amp;lt;inputbox&amp;gt;&lt;br /&gt;
type=create&lt;br /&gt;
break=no&lt;br /&gt;
&amp;lt;/inputbox&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: An input box&lt;br /&gt;
&lt;br /&gt;
== Interwiki ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Interwiki]]&lt;br /&gt;
&lt;br /&gt;
== LabeledSectionTransclusion ==&lt;br /&gt;
;Test&amp;amp;#160;:{{#lst:{{FULLPAGENAME}}/Labeled Section Transclusion|test1}}&lt;br /&gt;
;Expected :This is a test.&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' In this case, the &amp;quot;Section by heading&amp;quot; must be a section in the page that is to be transcluded.&lt;br /&gt;
;Test&amp;amp;#160;:{{#lsth:{{FULLPAGENAME}}/Labeled Section Transclusion|Section by heading}}&lt;br /&gt;
;Expected :This is a section with a heading&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[{{FULLPAGENAME}}/Labeled Section Transclusion]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;section begin=test1 /&amp;gt;This is a test.&amp;lt;section end=test1 /&amp;gt;&lt;br /&gt;
Some text ...&lt;br /&gt;
&lt;br /&gt;
=== Section by heading ===&lt;br /&gt;
This is a section with a heading&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Lingo ==&lt;br /&gt;
Lingo is a glossary extension. It lets you define a list of abbreviations and their definitions on [[{{MediaWiki:Lingo-terminologypagename}}]] page and then displays these definitions whenever an abbreviation is hovered over in an article. &lt;br /&gt;
&lt;br /&gt;
Check it below:&lt;br /&gt;
&lt;br /&gt;
USA &amp;lt;- is abbreviations&lt;br /&gt;
&lt;br /&gt;
== LocalisationUpdate ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Lockdown ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Loops ==&lt;br /&gt;
; Note: this extension requires that the Variables extension also be installed&lt;br /&gt;
;Test&amp;amp;#160;: {{#vardefine: i | 1 }}{{#while:&lt;br /&gt;
 | {{#ifexpr: {{#var: i }} &amp;lt; 4 | true }}&lt;br /&gt;
 | &lt;br /&gt;
{{#var: i }} {{#vardefine: i | {{#expr: {{#var: i }} + 1 }} }}&lt;br /&gt;
}}&lt;br /&gt;
;Expected&amp;amp;#160;: 1  2  3&lt;br /&gt;
&lt;br /&gt;
== MagicNoCache ==&lt;br /&gt;
The table cell should be empty:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|__NOCACHE__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Maps ==&lt;br /&gt;
;Variant 1&lt;br /&gt;
{{#display_map:address=Brandenburg Gate, Berlin, Germany|width=200|height=150|zoom=17|type=hybrid}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate, Berlin, Germany}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
;Variant 2&lt;br /&gt;
{{#display_map: Brandenburg Gate, Berlin~Brandenburg Gate }}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
== MasonryMainPage ==&lt;br /&gt;
&amp;lt;div id=&amp;quot;mediawiki-masonry-main-page-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== MobileFrontend ==&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_mobile}} This link] should open '''mobile''' version&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_desktop}} This link] should open '''desktop''' version&lt;br /&gt;
&lt;br /&gt;
== MultimediaViewer ==&lt;br /&gt;
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 &amp;lt;code&amp;gt;Open in Media Viewer&amp;lt;/code&amp;gt; button:&lt;br /&gt;
:[[File:JoshuaReynoldsParty.jpg|50px]]&lt;br /&gt;
&lt;br /&gt;
== MyVariables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{CURRENTUSER}} &lt;br /&gt;
; Expected&amp;amp;#160;: Your user name or the IP for anonymous users&lt;br /&gt;
&lt;br /&gt;
== Nuke ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Nuke]]&lt;br /&gt;
&lt;br /&gt;
== OpenGraphMeta ==&lt;br /&gt;
;Test&lt;br /&gt;
[[File:{{#setmainimage:JoshuaReynoldsParty.jpg}}|100px]]&lt;br /&gt;
;Expected:&lt;br /&gt;
[[File:JoshuaReynoldsParty.jpg|100px]]&lt;br /&gt;
&lt;br /&gt;
== OpenID Connect ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PDF Handler ==&lt;br /&gt;
You should see the content of the uploaded PDF ([[media:Imported_vocabulary.pdf|Imported_vocabulary.pdf]]):&lt;br /&gt;
&lt;br /&gt;
[[File:Imported_vocabulary.pdf|page=1|200px|Succeeded]]&lt;br /&gt;
&lt;br /&gt;
== Page Importer ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PageForms ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Forms]]&lt;br /&gt;
&lt;br /&gt;
== PageImages ==&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=pageimages&amp;amp;titles={{PAGENAMEE}} This must not fire a warning about pageimages]&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=help&amp;amp;modules=query This should list '''pageimages''' property]&lt;br /&gt;
&lt;br /&gt;
== Parser Function Helper ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== ParserFunctions ==&lt;br /&gt;
; Test math functions: {{#expr: 4 + 6}}&lt;br /&gt;
; Expected&amp;amp;#160;: 10&lt;br /&gt;
&lt;br /&gt;
; Test string functions: {{#ifeq:{{#expr: 4 + 6}}|10|{{#ifeq:{{#len:Icecream }}|8|{{#len:Icecream }}|disabled}}}}&lt;br /&gt;
; Expected&amp;amp;#160;: {{#ifeq:{{#len:Icecream }}|8|8|disabled}}&lt;br /&gt;
&lt;br /&gt;
== ParserHooks ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Parsoid ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PluggableAuth ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Poem ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;poem&amp;gt;&lt;br /&gt;
Une terre au flanc maigre, âpre, avare, inclément&lt;br /&gt;
Où les vivants pensifs travaillent tristement, &lt;br /&gt;
::Et qui donne à regret à cette race humaine&lt;br /&gt;
Un peu de pain pour tant de labeur et de peine&amp;amp;#160;; &lt;br /&gt;
::Des hommes durs, éclos sur ces sillons ingrats&amp;amp;#160;; &lt;br /&gt;
Des cités d’où s’en vont, en se tordant les bras, &lt;br /&gt;
::La charité, la paix, la foi, sœurs vénérables&amp;amp;#160;; &lt;br /&gt;
L’orgueil chez les puissants et chez les misérables&amp;amp;#160;; &lt;br /&gt;
&amp;lt;/poem&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: A nicely formatted poem&lt;br /&gt;
&lt;br /&gt;
== Renameuser ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RenameUser]]&lt;br /&gt;
&lt;br /&gt;
== Replace Text ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ReplaceText]]&lt;br /&gt;
&lt;br /&gt;
== RevisionSlider ==&lt;br /&gt;
Check '''Browse history Interactively''' slider interface at the top of ''Difference between revisions'' page ([{{fullurl:{{FULLPAGENAME}}|action=history}} history])&lt;br /&gt;
&lt;br /&gt;
== RottenLinks ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RottenLinks]]&lt;br /&gt;
&lt;br /&gt;
== SandboxLink ==&lt;br /&gt;
'''Sandbox''' link should be added on user's personal tools menu (at the top)&lt;br /&gt;
&lt;br /&gt;
== Scribunto ==&lt;br /&gt;
=== [[Module:String]] ===&lt;br /&gt;
; Test&amp;amp;#160;: {{#invoke:String|len|This is a test.}} &lt;br /&gt;
; Expected&amp;amp;#160;: 15&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:String]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
local p = {}&lt;br /&gt;
function p.len(frame)&lt;br /&gt;
	local s = frame.args[1]&lt;br /&gt;
	return mw.ustring.len( s )&lt;br /&gt;
end&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Semantic Drilldown ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BrowseData]]&lt;br /&gt;
&lt;br /&gt;
== Semantic Meeting Minutes ==&lt;br /&gt;
[[Special:FormEdit/Meeting Minutes]] must be a valid form.&lt;br /&gt;
&lt;br /&gt;
== SemanticCompoundQueries ==&lt;br /&gt;
This should produce no error:&lt;br /&gt;
{{#compound_query: [[:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |[[File:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |link=none&lt;br /&gt;
 |format=ul&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== SemanticMediaWiki ==&lt;br /&gt;
; Test&amp;amp;#160;:[[Test::NONEXISTENTPAGE|Test]] __SHOWFACTBOX__&lt;br /&gt;
; Expected&amp;amp;#160;:[[NONEXISTENTPAGE|Test]]&lt;br /&gt;
: There should be a factbox at the page bottom.&lt;br /&gt;
&lt;br /&gt;
== SemanticResultFormats ==&lt;br /&gt;
; Test (old wikis)&lt;br /&gt;
{{#ask:[[{{FULLPAGENAME}}]]|?Test|format=datatables}}&lt;br /&gt;
; Expected&lt;br /&gt;
: A nice-looking DataTable with a search field&lt;br /&gt;
&lt;br /&gt;
== SemanticScribunto ==&lt;br /&gt;
&lt;br /&gt;
Should be an icon with information popup -&amp;gt; {{#invoke:SemanticScribuntoTest|info|some text}}&lt;br /&gt;
&lt;br /&gt;
{{#invoke:SemanticScribuntoTest|inlineInfo}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:SemanticScribuntoTest]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-- Module:SMW&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
-- set with direct return results&lt;br /&gt;
function p.info( frame )&lt;br /&gt;
&lt;br /&gt;
    if not mw.smw then&lt;br /&gt;
        return &amp;quot;mw.smw module not found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if frame.args[1] == nil then&lt;br /&gt;
        return &amp;quot;no parameter found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    local tooltip&lt;br /&gt;
    if frame.args[2] then&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1], frame.args[2] )&lt;br /&gt;
    else&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1] )&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    return tooltip&lt;br /&gt;
end&lt;br /&gt;
-- another example, info used inside another function&lt;br /&gt;
function p.inlineInfo( frame )&lt;br /&gt;
&lt;br /&gt;
    local output = 'This is sample output'&lt;br /&gt;
&lt;br /&gt;
    -- so some stuff&lt;br /&gt;
&lt;br /&gt;
    output = output .. mw.smw.info( 'This is a warning', 'warning' )&lt;br /&gt;
&lt;br /&gt;
    -- some more stuff&lt;br /&gt;
&lt;br /&gt;
    return output&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SimpleMathJax ==&lt;br /&gt;
; Note: this extension does not work with the Math extension installed&lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;math&amp;gt;\int_{(x,y)\in C} x^3\, dx + 4y^2\, dy&amp;lt;/math&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: ∫(x,y)∈Cx3dx+4y2dy (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
And if &amp;lt;code&amp;gt;SMJ&amp;lt;/code&amp;gt; added as &amp;lt;code&amp;gt;$wgSmjExtraInlineMath = [ [ 'SMJ(', ')SMJ' ] ];&amp;lt;/code&amp;gt; in LocalSettings.php file: &lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: SMJ(E=mc^2)SMJ&lt;br /&gt;
; Expected&lt;br /&gt;
: E=mc^2 (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
== SpamBlacklist ==&lt;br /&gt;
This should display the spam blacklist log: [{{fullurl:Special:Log|type=spamblacklist}} spamblacklist].&lt;br /&gt;
&lt;br /&gt;
== SubPageList ==&lt;br /&gt;
;Result&lt;br /&gt;
{{#subpagecount: }}&lt;br /&gt;
;Expected&lt;br /&gt;
An integer matching the number of pages at [[Special:PrefixIndex/{{FULLPAGENAME}}/]]&lt;br /&gt;
&lt;br /&gt;
== SyntaxHighlight ==&lt;br /&gt;
; Note: this extension make also be referred to as &amp;quot;SyntaxHighlight GeSHi&amp;quot;&lt;br /&gt;
The following must be colorful:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line start=3 highlight=&amp;quot;1,5-7&amp;quot;&amp;gt;&lt;br /&gt;
def quick_sort(arr):&lt;br /&gt;
	less = []&lt;br /&gt;
	pivot_list = []&lt;br /&gt;
	more = []&lt;br /&gt;
	if len(arr) &amp;lt;= 1:&lt;br /&gt;
		return arr&lt;br /&gt;
	else:&lt;br /&gt;
		pass&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TemplateData ==&lt;br /&gt;
[{{fullurl:Template:Test|action=edit}} This link should take you to a page with the &amp;lt;code&amp;gt;Manage TemplateData&amp;lt;/code&amp;gt; button] (normally below the first heading).&lt;br /&gt;
&lt;br /&gt;
== TextExtracts ==&lt;br /&gt;
The output should not contain &amp;lt;code&amp;gt;Unrecognized parameter: exchars&amp;lt;/code&amp;gt; error:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=extracts&amp;amp;exchars=175&amp;amp;format=json&amp;amp;titles={{FULLPAGENAMEE}} Extract]&lt;br /&gt;
&lt;br /&gt;
== Thanks ==&lt;br /&gt;
[[Special:Log/thanks]] exists.&lt;br /&gt;
&lt;br /&gt;
== TitleBlacklist ==&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=help&amp;amp;modules=titleblacklist This should document the '''titleblacklist''' API]&lt;br /&gt;
&lt;br /&gt;
== TwitterCards ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== UniversalLanguageSelector ==&lt;br /&gt;
No test was invented. The language selector should appear somewhere and the extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Upload Wizard ==&lt;br /&gt;
UploadWizard is displayed at [[:Special:UploadWizard]]&lt;br /&gt;
&lt;br /&gt;
== UserFunctions ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#ifanon:It works|It works}}&lt;br /&gt;
; Expected&amp;amp;#160;: It works&lt;br /&gt;
&lt;br /&gt;
== VEForAll ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Validator ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Variables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#vardefine:test|testing}}{{#var:test}}&lt;br /&gt;
; Expected&amp;amp;#160;: testing&lt;br /&gt;
&lt;br /&gt;
== VisualEditor ==&lt;br /&gt;
This should load VisualEditor in edit mode:&lt;br /&gt;
[{{fullurl:Main Page|veaction=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WhoIsWatching ==&lt;br /&gt;
Should show the number of watching users below:&lt;br /&gt;
&lt;br /&gt;
{{#whoiswatching:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Widgets ==&lt;br /&gt;
;Test&lt;br /&gt;
:{{ns:Widget}}&lt;br /&gt;
;Expected&lt;br /&gt;
:Widget&lt;br /&gt;
&lt;br /&gt;
== WikiEditor ==&lt;br /&gt;
This should load a tabbed WikiEditor:&lt;br /&gt;
[{{fullurl:Main Page|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WikiSEO ==&lt;br /&gt;
{{#seo:&lt;br /&gt;
|title=Your page title&lt;br /&gt;
|titlemode=append&lt;br /&gt;
|keywords=these,are,your,keywords&lt;br /&gt;
|description=Your meta description&lt;br /&gt;
}}&lt;br /&gt;
The page source should contain:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Your page title&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;keywords&amp;quot; content=&amp;quot;these,are,your,keywords&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There should also be a description, with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;description&amp;quot; content=&amp;quot;Your meta description&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== Wiretap ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Wiretap]]&lt;br /&gt;
&lt;br /&gt;
== YouTube ==&lt;br /&gt;
&amp;lt;youtube&amp;gt;VyBSS48E4xI&amp;lt;/youtube&amp;gt;&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2465</id>
		<title>FamilySearch Wiki:Extension tests</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2465"/>
		<updated>2023-11-17T15:58:24Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: remove unused /* Semantic Internal Objects */ MFAM-186?focusedCommentId=53834&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following are tests of the extensions running on the wiki. Where applicable, if the &amp;quot;Test&amp;quot; value matches the &amp;quot;Expected&amp;quot; value, the extension can be assumed to be working.&lt;br /&gt;
[[Category:Tests]]&lt;br /&gt;
&lt;br /&gt;
== Admin Links ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:AdminLinks]]&lt;br /&gt;
&lt;br /&gt;
If you are an admin, you should see links by your personal tools.&lt;br /&gt;
&lt;br /&gt;
== AdvancedSearch ==&lt;br /&gt;
If [[#CirrusSearch]] is enabled, the extension produces the &amp;quot;Advanced Search&amp;quot; form on Special:Search. &lt;br /&gt;
&lt;br /&gt;
== Approved Revs==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ApprovedRevs]] &lt;br /&gt;
&lt;br /&gt;
== Arrays ==&lt;br /&gt;
{{#arraydefine:b|orange,red ,yellow, yellow}}&lt;br /&gt;
; Test&lt;br /&gt;
: {{#arrayprint:b}}&lt;br /&gt;
; Expected&lt;br /&gt;
: orange, red, yellow, yellow&lt;br /&gt;
&lt;br /&gt;
== BatchUserRights ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BatchUserRights]]&lt;br /&gt;
&lt;br /&gt;
== Bootstrap ==&lt;br /&gt;
:This test should be done while using the Chameleon skin; [{{fullurl:{{FULLPAGENAME}}|useskin=chameleon}} view page with useskin=chameleon]&lt;br /&gt;
This should be a greeny shadowed alert box with white text:&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-success shadow text-white font-weight-bold&amp;quot;&amp;gt;&lt;br /&gt;
I am bootstrapped&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== BootstrapComponents ==&lt;br /&gt;
Should be an accordion below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;bootstrap_accordion&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel1&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel2&amp;quot; color=&amp;quot;danger&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel3&amp;quot; active&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel4&amp;quot; color=&amp;quot;info&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
&amp;lt;/bootstrap_accordion&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Cargo ==&lt;br /&gt;
The [[Special:CargoTables]] should exist&lt;br /&gt;
&lt;br /&gt;
== CategoryTree ==&lt;br /&gt;
A category tree should be shown:&lt;br /&gt;
&amp;lt;categorytree mode=pages&amp;gt;Tests&amp;lt;/categorytree&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CharInsert ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;charinsert&amp;gt;Á&amp;lt;/charinsert&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt; [{{fullurl:{{FULLPAGENAME}}}}# Á]&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CirrusSearch ==&lt;br /&gt;
;For semantic wikis&lt;br /&gt;
The search results should display &amp;quot;'''ask'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+%23ask%3A&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
;For Cite enabled wikis&lt;br /&gt;
The search results should display &amp;quot;'''ref'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+ref&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
== Cite ==&lt;br /&gt;
; Test&lt;br /&gt;
: Text&amp;lt;ref&amp;gt;Test&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: Text&amp;lt;sup id=&amp;quot;cite_ref-1&amp;quot; class=&amp;quot;reference plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_note-1}} [1]]&amp;lt;/sup&amp;gt;&lt;br /&gt;
&amp;lt;ol class=&amp;quot;references&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li id=&amp;quot;cite_note-1&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;mw-cite-backlink plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_ref-1}} &amp;lt;span class=&amp;quot;cite-accessibility-label&amp;quot;&amp;gt;Jump up &amp;lt;/span&amp;gt;↑]&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;reference-text&amp;quot;&amp;gt;Test&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CiteThisPage ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:CiteThisPage]]&lt;br /&gt;
&lt;br /&gt;
== CodeEditor ==&lt;br /&gt;
This should open in the ACE editor interface:&lt;br /&gt;
[{{fullurl: Mediawiki:Common.css|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== CodeMirror ==&lt;br /&gt;
* The &amp;quot;Editing&amp;quot; tab on [[Special:Preferences]] should have the &amp;quot;Enable colorblind-friendly mode&amp;quot; checkbox (&amp;quot;Accessibility&amp;quot; section). &lt;br /&gt;
&lt;br /&gt;
== ContributionScores ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ContributionScores]]&lt;br /&gt;
&lt;br /&gt;
== Data Transfer ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ImportCSV]]&lt;br /&gt;
&lt;br /&gt;
== Description2 ==&lt;br /&gt;
This should produce &amp;quot;Description2 works!&amp;quot; in the description meta tag of this page head.&lt;br /&gt;
{{#description2:Description2 works!}}&lt;br /&gt;
&lt;br /&gt;
== DismissableSiteNotice ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.dismissableSiteNotice&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.dismissableSiteNotice');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== DisplayTitle==&lt;br /&gt;
;Expected: &lt;br /&gt;
{{FULLPAGENAME}}&lt;br /&gt;
;Result:&lt;br /&gt;
{{#getdisplaytitle:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Echo ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Notifications]]&lt;br /&gt;
&lt;br /&gt;
== Elastica ==&lt;br /&gt;
Usually, it is a dependency of CirrusSearch. If CirrusSearch test is passed, Elastica works. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== EmailFile ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailFile]]&lt;br /&gt;
&lt;br /&gt;
== EmailRegisteredUsers ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailRegisteredUsers]]&lt;br /&gt;
&lt;br /&gt;
== External Data ==&lt;br /&gt;
{{#get_web_data:url=https://www.semantic-mediawiki.org/wiki/Special:Ask/-5B-5BGermany-5D-5D/-3FLocated_in/format%3Dcsv/sep%3D,&lt;br /&gt;
    |format=csv with header|data=Located in=Located in}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#external_value:Located in}}&lt;br /&gt;
;Expected :Europe&lt;br /&gt;
&lt;br /&gt;
== FixedHeaderTable ==&lt;br /&gt;
Header of table below should be fixed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;fixedheadertable fixedcolumns=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header 1&lt;br /&gt;
! Header 2 &lt;br /&gt;
|- &lt;br /&gt;
| Cell 1&lt;br /&gt;
| Cell 2&lt;br /&gt;
|- &lt;br /&gt;
| Cell 3&lt;br /&gt;
| Cell 4&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/fixedheadertable&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FsLookAndFeel ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.fslookandfeel.scripts&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.fslookandfeel.scripts');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== FsSignin ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Gadgets ==&lt;br /&gt;
* [{{fullurl: Special:AllPages|from=&amp;amp;to=&amp;amp;namespace=2300}} This link] must '''not contain''' the error message &amp;quot;&amp;lt;code&amp;gt;{{SITENAME}} does not have namespace &amp;quot;2300&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
* {{#ifeq: {{NAMESPACENUMBER:Gadget:Something}}|2300|You have gadgets!|No gadgets or something went unusual...}}&lt;br /&gt;
&lt;br /&gt;
== GlobalNotice ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== GoogleTranslator ==&lt;br /&gt;
The sidebar should include an option to translate the page into different languages.&lt;br /&gt;
&lt;br /&gt;
== Header Tabs ==&lt;br /&gt;
Two tabs should be visible below.&lt;br /&gt;
= Test =&lt;br /&gt;
Content&lt;br /&gt;
= Test2 =&lt;br /&gt;
More content&lt;br /&gt;
&amp;lt;headertabs /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ImageMap ==&lt;br /&gt;
&amp;lt;imagemap&amp;gt;&lt;br /&gt;
Image:JoshuaReynoldsParty.jpg|thumb|center|400px|alt=Dining room with nine men seated around a table. The dinner has been finished, and a large man at the head talks and gesticulates while the others eagerly listen. The men wear wigs and clothing of late 18th century Britain, and the furniture, hangings, and chandelier are of similar vintage. A liveried servant is entering with a tray bearing two high-shouldered decanters of wine.|Image map example. Clicking on a person in the picture causes the browser to load the appropriate article.&lt;br /&gt;
&lt;br /&gt;
poly 133 343 124 287 159 224 189 228 195 291 222 311 209 343 209 354 243 362 292 466 250 463 [[wikipedia:Samuel Johnson|Dr Johnson - Dictionary writer]]&lt;br /&gt;
poly 76 224 84 255 43 302 62 400 123 423 121 361 137 344 122 290 111 234 96 225 [[wikipedia:James Boswell|Boswell - Biographer]]&lt;br /&gt;
poly 190 276 208 240 229 228 247 238 250 258 286 319 282 323 223 323 220 301 200 295 [[wikipedia:Joshua Reynolds|Sir Joshua Reynolds - Host]]&lt;br /&gt;
poly 308 317 311 270 328 261 316 246 320 228 343 227 357 240 377 274 366 284 352 311 319 324 [[wikipedia:David Garrick|David Garrick - actor]]&lt;br /&gt;
poly 252 406 313 343 341 343 366 280 383 273 372 251 378 222 409 228 414 280 420 292 390 300 374 360 359 437 306 418 313 391 272 415 [[wikipedia:Edmund Burke|Edmund Burke - statesman]]&lt;br /&gt;
rect 418 220 452 287 [[wikipedia:Pasquale Paoli|Pasqual Paoli - Corsican patriot]]&lt;br /&gt;
poly 455 238 484 253 505 303 495 363 501 377 491 443 429 439 423 375 466 352 [[wikipedia:Charles Burney|Charles Burney - music historian]]&lt;br /&gt;
poly 501 279 546 237 567 239 572 308 560 326 537 316 530 300 502 289 [[wikipedia:Thomas Warton|Thomas Warton - poet laureate]]&lt;br /&gt;
poly 572 453 591 446 572 373 603 351 562 325 592 288 573 260 573 248 591 243 615 254 637 280 655 334 705 396 656 419 625 382 609 391 613 453 [[wikipedia:Oliver Goldsmith|Oliver Goldsmith - writer]]&lt;br /&gt;
rect 450 86 584 188 [[wikipedia:Joshua Reynolds|prob.The Infant Academy 1782]]&lt;br /&gt;
rect 286 87 376 191 [[wikipedia:Joshua Reynolds|unknown painting]]&lt;br /&gt;
circle 100 141 20 [[wikipedia:Joshua Reynolds|An unknown portrait]]&lt;br /&gt;
poly 503 192 511 176 532 176 534 200 553 219 554 234 541 236 525 261 506 261 511 220 515 215 [[wikipedia:Francis Barber|servant - poss. Francis Barber]]&lt;br /&gt;
rect 12 10 702 500 [[wikipedia:The Club (Literary Club)|Use button to enlarge or use hyperlinks]]&lt;br /&gt;
&amp;lt;/imagemap&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== InputBox ==&lt;br /&gt;
; Test&lt;br /&gt;
&amp;lt;inputbox&amp;gt;&lt;br /&gt;
type=create&lt;br /&gt;
break=no&lt;br /&gt;
&amp;lt;/inputbox&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: An input box&lt;br /&gt;
&lt;br /&gt;
== Interwiki ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Interwiki]]&lt;br /&gt;
&lt;br /&gt;
== LabeledSectionTransclusion ==&lt;br /&gt;
;Test&amp;amp;#160;:{{#lst:{{FULLPAGENAME}}/Labeled Section Transclusion|test1}}&lt;br /&gt;
;Expected :This is a test.&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' In this case, the &amp;quot;Section by heading&amp;quot; must be a section in the page that is to be transcluded.&lt;br /&gt;
;Test&amp;amp;#160;:{{#lsth:{{FULLPAGENAME}}/Labeled Section Transclusion|Section by heading}}&lt;br /&gt;
;Expected :This is a section with a heading&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[{{FULLPAGENAME}}/Labeled Section Transclusion]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;section begin=test1 /&amp;gt;This is a test.&amp;lt;section end=test1 /&amp;gt;&lt;br /&gt;
Some text ...&lt;br /&gt;
&lt;br /&gt;
=== Section by heading ===&lt;br /&gt;
This is a section with a heading&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Lingo ==&lt;br /&gt;
Lingo is a glossary extension. It lets you define a list of abbreviations and their definitions on [[{{MediaWiki:Lingo-terminologypagename}}]] page and then displays these definitions whenever an abbreviation is hovered over in an article. &lt;br /&gt;
&lt;br /&gt;
Check it below:&lt;br /&gt;
&lt;br /&gt;
USA &amp;lt;- is abbreviations&lt;br /&gt;
&lt;br /&gt;
== LocalisationUpdate ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Lockdown ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Loops ==&lt;br /&gt;
; Note: this extension requires that the Variables extension also be installed&lt;br /&gt;
;Test&amp;amp;#160;: {{#vardefine: i | 1 }}{{#while:&lt;br /&gt;
 | {{#ifexpr: {{#var: i }} &amp;lt; 4 | true }}&lt;br /&gt;
 | &lt;br /&gt;
{{#var: i }} {{#vardefine: i | {{#expr: {{#var: i }} + 1 }} }}&lt;br /&gt;
}}&lt;br /&gt;
;Expected&amp;amp;#160;: 1  2  3&lt;br /&gt;
&lt;br /&gt;
== MagicNoCache ==&lt;br /&gt;
The table cell should be empty:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|__NOCACHE__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Maps ==&lt;br /&gt;
;Variant 1&lt;br /&gt;
{{#display_map:address=Brandenburg Gate, Berlin, Germany|width=200|height=150|zoom=17|type=hybrid}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate, Berlin, Germany}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
;Variant 2&lt;br /&gt;
{{#display_map: Brandenburg Gate, Berlin~Brandenburg Gate }}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
== MasonryMainPage ==&lt;br /&gt;
&amp;lt;div id=&amp;quot;mediawiki-masonry-main-page-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== MobileFrontend ==&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_mobile}} This link] should open '''mobile''' version&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_desktop}} This link] should open '''desktop''' version&lt;br /&gt;
&lt;br /&gt;
== MultimediaViewer ==&lt;br /&gt;
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 &amp;lt;code&amp;gt;Open in Media Viewer&amp;lt;/code&amp;gt; button:&lt;br /&gt;
:[[File:JoshuaReynoldsParty.jpg|50px]]&lt;br /&gt;
&lt;br /&gt;
== MyVariables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{CURRENTUSER}} &lt;br /&gt;
; Expected&amp;amp;#160;: Your user name or the IP for anonymous users&lt;br /&gt;
&lt;br /&gt;
== Nuke ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Nuke]]&lt;br /&gt;
&lt;br /&gt;
== OpenGraphMeta ==&lt;br /&gt;
;Test&lt;br /&gt;
[[File:{{#setmainimage:JoshuaReynoldsParty.jpg}}|100px]]&lt;br /&gt;
;Expected:&lt;br /&gt;
[[File:JoshuaReynoldsParty.jpg|100px]]&lt;br /&gt;
&lt;br /&gt;
== OpenID Connect ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PDF Handler ==&lt;br /&gt;
You should see the content of the uploaded PDF ([[media:Imported_vocabulary.pdf|Imported_vocabulary.pdf]]):&lt;br /&gt;
&lt;br /&gt;
[[File:Imported_vocabulary.pdf|page=1|200px|Succeeded]]&lt;br /&gt;
&lt;br /&gt;
== Page Importer ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PageForms ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Forms]]&lt;br /&gt;
&lt;br /&gt;
== PageImages ==&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=pageimages&amp;amp;titles={{PAGENAMEE}} This must not fire a warning about pageimages]&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=help&amp;amp;modules=query This should list '''pageimages''' property]&lt;br /&gt;
&lt;br /&gt;
== Parser Function Helper ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== ParserFunctions ==&lt;br /&gt;
; Test math functions: {{#expr: 4 + 6}}&lt;br /&gt;
; Expected&amp;amp;#160;: 10&lt;br /&gt;
&lt;br /&gt;
; Test string functions: {{#ifeq:{{#expr: 4 + 6}}|10|{{#ifeq:{{#len:Icecream }}|8|{{#len:Icecream }}|disabled}}}}&lt;br /&gt;
; Expected&amp;amp;#160;: {{#ifeq:{{#len:Icecream }}|8|8|disabled}}&lt;br /&gt;
&lt;br /&gt;
== ParserHooks ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Parsoid ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PluggableAuth ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Poem ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;poem&amp;gt;&lt;br /&gt;
Une terre au flanc maigre, âpre, avare, inclément&lt;br /&gt;
Où les vivants pensifs travaillent tristement, &lt;br /&gt;
::Et qui donne à regret à cette race humaine&lt;br /&gt;
Un peu de pain pour tant de labeur et de peine&amp;amp;#160;; &lt;br /&gt;
::Des hommes durs, éclos sur ces sillons ingrats&amp;amp;#160;; &lt;br /&gt;
Des cités d’où s’en vont, en se tordant les bras, &lt;br /&gt;
::La charité, la paix, la foi, sœurs vénérables&amp;amp;#160;; &lt;br /&gt;
L’orgueil chez les puissants et chez les misérables&amp;amp;#160;; &lt;br /&gt;
&amp;lt;/poem&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: A nicely formatted poem&lt;br /&gt;
&lt;br /&gt;
== Renameuser ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RenameUser]]&lt;br /&gt;
&lt;br /&gt;
== Replace Text ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ReplaceText]]&lt;br /&gt;
&lt;br /&gt;
== RevisionSlider ==&lt;br /&gt;
Check '''Browse history Interactively''' slider interface at the top of ''Difference between revisions'' page ([{{fullurl:{{FULLPAGENAME}}|action=history}} history])&lt;br /&gt;
&lt;br /&gt;
== RottenLinks ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RottenLinks]]&lt;br /&gt;
&lt;br /&gt;
== SandboxLink ==&lt;br /&gt;
'''Sandbox''' link should be added on user's personal tools menu (at the top)&lt;br /&gt;
&lt;br /&gt;
== Scribunto ==&lt;br /&gt;
=== [[Module:String]] ===&lt;br /&gt;
; Test&amp;amp;#160;: {{#invoke:String|len|This is a test.}} &lt;br /&gt;
; Expected&amp;amp;#160;: 15&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:String]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
local p = {}&lt;br /&gt;
function p.len(frame)&lt;br /&gt;
	local s = frame.args[1]&lt;br /&gt;
	return mw.ustring.len( s )&lt;br /&gt;
end&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Semantic Drilldown ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BrowseData]]&lt;br /&gt;
&lt;br /&gt;
== Semantic Meeting Minutes ==&lt;br /&gt;
[[Special:FormEdit/Meeting Minutes]] must be a valid form.&lt;br /&gt;
&lt;br /&gt;
== SemanticCompoundQueries ==&lt;br /&gt;
This should produce no error:&lt;br /&gt;
{{#compound_query: [[:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |[[File:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |link=none&lt;br /&gt;
 |format=ul&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== SemanticMediaWiki ==&lt;br /&gt;
; Test&amp;amp;#160;:[[Test::NONEXISTENTPAGE|Test]] __SHOWFACTBOX__&lt;br /&gt;
; Expected&amp;amp;#160;:[[NONEXISTENTPAGE|Test]]&lt;br /&gt;
: There should be a factbox at the page bottom.&lt;br /&gt;
&lt;br /&gt;
== SemanticResultFormats ==&lt;br /&gt;
; Test (old wikis)&lt;br /&gt;
{{#ask:[[{{FULLPAGENAME}}]]|?Test|format=datatables}}&lt;br /&gt;
; Expected&lt;br /&gt;
: A nice-looking DataTable with a search field&lt;br /&gt;
&lt;br /&gt;
== SemanticScribunto ==&lt;br /&gt;
&lt;br /&gt;
Should be an icon with information popup -&amp;gt; {{#invoke:SemanticScribuntoTest|info|some text}}&lt;br /&gt;
&lt;br /&gt;
{{#invoke:SemanticScribuntoTest|inlineInfo}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:SemanticScribuntoTest]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-- Module:SMW&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
-- set with direct return results&lt;br /&gt;
function p.info( frame )&lt;br /&gt;
&lt;br /&gt;
    if not mw.smw then&lt;br /&gt;
        return &amp;quot;mw.smw module not found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if frame.args[1] == nil then&lt;br /&gt;
        return &amp;quot;no parameter found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    local tooltip&lt;br /&gt;
    if frame.args[2] then&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1], frame.args[2] )&lt;br /&gt;
    else&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1] )&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    return tooltip&lt;br /&gt;
end&lt;br /&gt;
-- another example, info used inside another function&lt;br /&gt;
function p.inlineInfo( frame )&lt;br /&gt;
&lt;br /&gt;
    local output = 'This is sample output'&lt;br /&gt;
&lt;br /&gt;
    -- so some stuff&lt;br /&gt;
&lt;br /&gt;
    output = output .. mw.smw.info( 'This is a warning', 'warning' )&lt;br /&gt;
&lt;br /&gt;
    -- some more stuff&lt;br /&gt;
&lt;br /&gt;
    return output&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SimpleMathJax ==&lt;br /&gt;
; Note: this extension does not work with the Math extension installed&lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;math&amp;gt;\int_{(x,y)\in C} x^3\, dx + 4y^2\, dy&amp;lt;/math&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: ∫(x,y)∈Cx3dx+4y2dy (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
And if &amp;lt;code&amp;gt;SMJ&amp;lt;/code&amp;gt; added as &amp;lt;code&amp;gt;$wgSmjExtraInlineMath = [ [ 'SMJ(', ')SMJ' ] ];&amp;lt;/code&amp;gt; in LocalSettings.php file: &lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: SMJ(E=mc^2)SMJ&lt;br /&gt;
; Expected&lt;br /&gt;
: E=mc^2 (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
== SpamBlacklist ==&lt;br /&gt;
This should display the spam blacklist log: [{{fullurl:Special:Log|type=spamblacklist}} spamblacklist].&lt;br /&gt;
&lt;br /&gt;
== SubPageList ==&lt;br /&gt;
;Result&lt;br /&gt;
{{#subpagecount: }}&lt;br /&gt;
;Expected&lt;br /&gt;
An integer matching the number of pages at [[Special:PrefixIndex/{{FULLPAGENAME}}/]]&lt;br /&gt;
&lt;br /&gt;
== SyntaxHighlight ==&lt;br /&gt;
; Note: this extension make also be referred to as &amp;quot;SyntaxHighlight GeSHi&amp;quot;&lt;br /&gt;
The following must be colorful:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line start=3 highlight=&amp;quot;1,5-7&amp;quot;&amp;gt;&lt;br /&gt;
def quick_sort(arr):&lt;br /&gt;
	less = []&lt;br /&gt;
	pivot_list = []&lt;br /&gt;
	more = []&lt;br /&gt;
	if len(arr) &amp;lt;= 1:&lt;br /&gt;
		return arr&lt;br /&gt;
	else:&lt;br /&gt;
		pass&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TemplateData ==&lt;br /&gt;
[{{fullurl:Template:Test|action=edit}} This link should take you to a page with the &amp;lt;code&amp;gt;Manage TemplateData&amp;lt;/code&amp;gt; button] (normally below the first heading).&lt;br /&gt;
&lt;br /&gt;
== TextExtracts ==&lt;br /&gt;
The output should not contain &amp;lt;code&amp;gt;Unrecognized parameter: exchars&amp;lt;/code&amp;gt; error:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=extracts&amp;amp;exchars=175&amp;amp;format=json&amp;amp;titles={{FULLPAGENAMEE}} Extract]&lt;br /&gt;
&lt;br /&gt;
== Thanks ==&lt;br /&gt;
[[Special:Log/thanks]] exists.&lt;br /&gt;
&lt;br /&gt;
== TitleBlacklist ==&lt;br /&gt;
;The text should follow:&lt;br /&gt;
{{int: Titleblacklist}}&lt;br /&gt;
&lt;br /&gt;
== TwitterCards ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== UniversalLanguageSelector ==&lt;br /&gt;
No test was invented. The language selector should appear somewhere and the extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Upload Wizard ==&lt;br /&gt;
UploadWizard is displayed at [[:Special:UploadWizard]]&lt;br /&gt;
&lt;br /&gt;
== UserFunctions ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#ifanon:It works|It works}}&lt;br /&gt;
; Expected&amp;amp;#160;: It works&lt;br /&gt;
&lt;br /&gt;
== VEForAll ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Validator ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Variables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#vardefine:test|testing}}{{#var:test}}&lt;br /&gt;
; Expected&amp;amp;#160;: testing&lt;br /&gt;
&lt;br /&gt;
== VisualEditor ==&lt;br /&gt;
This should load VisualEditor in edit mode:&lt;br /&gt;
[{{fullurl:Main Page|veaction=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WhoIsWatching ==&lt;br /&gt;
Should show the number of watching users below:&lt;br /&gt;
&lt;br /&gt;
{{#whoiswatching:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Widgets ==&lt;br /&gt;
;Test&lt;br /&gt;
:{{ns:Widget}}&lt;br /&gt;
;Expected&lt;br /&gt;
:Widget&lt;br /&gt;
&lt;br /&gt;
== WikiEditor ==&lt;br /&gt;
This should load a tabbed WikiEditor:&lt;br /&gt;
[{{fullurl:Main Page|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WikiSEO ==&lt;br /&gt;
{{#seo:&lt;br /&gt;
|title=Your page title&lt;br /&gt;
|titlemode=append&lt;br /&gt;
|keywords=these,are,your,keywords&lt;br /&gt;
|description=Your meta description&lt;br /&gt;
}}&lt;br /&gt;
The page source should contain:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Your page title&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;keywords&amp;quot; content=&amp;quot;these,are,your,keywords&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There should also be a description, with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;description&amp;quot; content=&amp;quot;Your meta description&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== Wiretap ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Wiretap]]&lt;br /&gt;
&lt;br /&gt;
== YouTube ==&lt;br /&gt;
&amp;lt;youtube&amp;gt;VyBSS48E4xI&amp;lt;/youtube&amp;gt;&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2464</id>
		<title>FamilySearch Wiki:Extension tests</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2464"/>
		<updated>2023-11-17T15:57:55Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: remove /* HeaderFooter */ MFAM-125&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following are tests of the extensions running on the wiki. Where applicable, if the &amp;quot;Test&amp;quot; value matches the &amp;quot;Expected&amp;quot; value, the extension can be assumed to be working.&lt;br /&gt;
[[Category:Tests]]&lt;br /&gt;
&lt;br /&gt;
== Admin Links ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:AdminLinks]]&lt;br /&gt;
&lt;br /&gt;
If you are an admin, you should see links by your personal tools.&lt;br /&gt;
&lt;br /&gt;
== AdvancedSearch ==&lt;br /&gt;
If [[#CirrusSearch]] is enabled, the extension produces the &amp;quot;Advanced Search&amp;quot; form on Special:Search. &lt;br /&gt;
&lt;br /&gt;
== Approved Revs==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ApprovedRevs]] &lt;br /&gt;
&lt;br /&gt;
== Arrays ==&lt;br /&gt;
{{#arraydefine:b|orange,red ,yellow, yellow}}&lt;br /&gt;
; Test&lt;br /&gt;
: {{#arrayprint:b}}&lt;br /&gt;
; Expected&lt;br /&gt;
: orange, red, yellow, yellow&lt;br /&gt;
&lt;br /&gt;
== BatchUserRights ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BatchUserRights]]&lt;br /&gt;
&lt;br /&gt;
== Bootstrap ==&lt;br /&gt;
:This test should be done while using the Chameleon skin; [{{fullurl:{{FULLPAGENAME}}|useskin=chameleon}} view page with useskin=chameleon]&lt;br /&gt;
This should be a greeny shadowed alert box with white text:&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-success shadow text-white font-weight-bold&amp;quot;&amp;gt;&lt;br /&gt;
I am bootstrapped&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== BootstrapComponents ==&lt;br /&gt;
Should be an accordion below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;bootstrap_accordion&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel1&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel2&amp;quot; color=&amp;quot;danger&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel3&amp;quot; active&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel4&amp;quot; color=&amp;quot;info&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
&amp;lt;/bootstrap_accordion&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Cargo ==&lt;br /&gt;
The [[Special:CargoTables]] should exist&lt;br /&gt;
&lt;br /&gt;
== CategoryTree ==&lt;br /&gt;
A category tree should be shown:&lt;br /&gt;
&amp;lt;categorytree mode=pages&amp;gt;Tests&amp;lt;/categorytree&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CharInsert ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;charinsert&amp;gt;Á&amp;lt;/charinsert&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt; [{{fullurl:{{FULLPAGENAME}}}}# Á]&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CirrusSearch ==&lt;br /&gt;
;For semantic wikis&lt;br /&gt;
The search results should display &amp;quot;'''ask'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+%23ask%3A&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
;For Cite enabled wikis&lt;br /&gt;
The search results should display &amp;quot;'''ref'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+ref&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
== Cite ==&lt;br /&gt;
; Test&lt;br /&gt;
: Text&amp;lt;ref&amp;gt;Test&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: Text&amp;lt;sup id=&amp;quot;cite_ref-1&amp;quot; class=&amp;quot;reference plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_note-1}} [1]]&amp;lt;/sup&amp;gt;&lt;br /&gt;
&amp;lt;ol class=&amp;quot;references&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li id=&amp;quot;cite_note-1&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;mw-cite-backlink plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_ref-1}} &amp;lt;span class=&amp;quot;cite-accessibility-label&amp;quot;&amp;gt;Jump up &amp;lt;/span&amp;gt;↑]&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;reference-text&amp;quot;&amp;gt;Test&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CiteThisPage ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:CiteThisPage]]&lt;br /&gt;
&lt;br /&gt;
== CodeEditor ==&lt;br /&gt;
This should open in the ACE editor interface:&lt;br /&gt;
[{{fullurl: Mediawiki:Common.css|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== CodeMirror ==&lt;br /&gt;
* The &amp;quot;Editing&amp;quot; tab on [[Special:Preferences]] should have the &amp;quot;Enable colorblind-friendly mode&amp;quot; checkbox (&amp;quot;Accessibility&amp;quot; section). &lt;br /&gt;
&lt;br /&gt;
== ContributionScores ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ContributionScores]]&lt;br /&gt;
&lt;br /&gt;
== Data Transfer ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ImportCSV]]&lt;br /&gt;
&lt;br /&gt;
== Description2 ==&lt;br /&gt;
This should produce &amp;quot;Description2 works!&amp;quot; in the description meta tag of this page head.&lt;br /&gt;
{{#description2:Description2 works!}}&lt;br /&gt;
&lt;br /&gt;
== DismissableSiteNotice ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.dismissableSiteNotice&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.dismissableSiteNotice');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== DisplayTitle==&lt;br /&gt;
;Expected: &lt;br /&gt;
{{FULLPAGENAME}}&lt;br /&gt;
;Result:&lt;br /&gt;
{{#getdisplaytitle:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Echo ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Notifications]]&lt;br /&gt;
&lt;br /&gt;
== Elastica ==&lt;br /&gt;
Usually, it is a dependency of CirrusSearch. If CirrusSearch test is passed, Elastica works. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== EmailFile ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailFile]]&lt;br /&gt;
&lt;br /&gt;
== EmailRegisteredUsers ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailRegisteredUsers]]&lt;br /&gt;
&lt;br /&gt;
== External Data ==&lt;br /&gt;
{{#get_web_data:url=https://www.semantic-mediawiki.org/wiki/Special:Ask/-5B-5BGermany-5D-5D/-3FLocated_in/format%3Dcsv/sep%3D,&lt;br /&gt;
    |format=csv with header|data=Located in=Located in}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#external_value:Located in}}&lt;br /&gt;
;Expected :Europe&lt;br /&gt;
&lt;br /&gt;
== FixedHeaderTable ==&lt;br /&gt;
Header of table below should be fixed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;fixedheadertable fixedcolumns=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header 1&lt;br /&gt;
! Header 2 &lt;br /&gt;
|- &lt;br /&gt;
| Cell 1&lt;br /&gt;
| Cell 2&lt;br /&gt;
|- &lt;br /&gt;
| Cell 3&lt;br /&gt;
| Cell 4&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/fixedheadertable&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FsLookAndFeel ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.fslookandfeel.scripts&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.fslookandfeel.scripts');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== FsSignin ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Gadgets ==&lt;br /&gt;
* [{{fullurl: Special:AllPages|from=&amp;amp;to=&amp;amp;namespace=2300}} This link] must '''not contain''' the error message &amp;quot;&amp;lt;code&amp;gt;{{SITENAME}} does not have namespace &amp;quot;2300&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
* {{#ifeq: {{NAMESPACENUMBER:Gadget:Something}}|2300|You have gadgets!|No gadgets or something went unusual...}}&lt;br /&gt;
&lt;br /&gt;
== GlobalNotice ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== GoogleTranslator ==&lt;br /&gt;
The sidebar should include an option to translate the page into different languages.&lt;br /&gt;
&lt;br /&gt;
== Header Tabs ==&lt;br /&gt;
Two tabs should be visible below.&lt;br /&gt;
= Test =&lt;br /&gt;
Content&lt;br /&gt;
= Test2 =&lt;br /&gt;
More content&lt;br /&gt;
&amp;lt;headertabs /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ImageMap ==&lt;br /&gt;
&amp;lt;imagemap&amp;gt;&lt;br /&gt;
Image:JoshuaReynoldsParty.jpg|thumb|center|400px|alt=Dining room with nine men seated around a table. The dinner has been finished, and a large man at the head talks and gesticulates while the others eagerly listen. The men wear wigs and clothing of late 18th century Britain, and the furniture, hangings, and chandelier are of similar vintage. A liveried servant is entering with a tray bearing two high-shouldered decanters of wine.|Image map example. Clicking on a person in the picture causes the browser to load the appropriate article.&lt;br /&gt;
&lt;br /&gt;
poly 133 343 124 287 159 224 189 228 195 291 222 311 209 343 209 354 243 362 292 466 250 463 [[wikipedia:Samuel Johnson|Dr Johnson - Dictionary writer]]&lt;br /&gt;
poly 76 224 84 255 43 302 62 400 123 423 121 361 137 344 122 290 111 234 96 225 [[wikipedia:James Boswell|Boswell - Biographer]]&lt;br /&gt;
poly 190 276 208 240 229 228 247 238 250 258 286 319 282 323 223 323 220 301 200 295 [[wikipedia:Joshua Reynolds|Sir Joshua Reynolds - Host]]&lt;br /&gt;
poly 308 317 311 270 328 261 316 246 320 228 343 227 357 240 377 274 366 284 352 311 319 324 [[wikipedia:David Garrick|David Garrick - actor]]&lt;br /&gt;
poly 252 406 313 343 341 343 366 280 383 273 372 251 378 222 409 228 414 280 420 292 390 300 374 360 359 437 306 418 313 391 272 415 [[wikipedia:Edmund Burke|Edmund Burke - statesman]]&lt;br /&gt;
rect 418 220 452 287 [[wikipedia:Pasquale Paoli|Pasqual Paoli - Corsican patriot]]&lt;br /&gt;
poly 455 238 484 253 505 303 495 363 501 377 491 443 429 439 423 375 466 352 [[wikipedia:Charles Burney|Charles Burney - music historian]]&lt;br /&gt;
poly 501 279 546 237 567 239 572 308 560 326 537 316 530 300 502 289 [[wikipedia:Thomas Warton|Thomas Warton - poet laureate]]&lt;br /&gt;
poly 572 453 591 446 572 373 603 351 562 325 592 288 573 260 573 248 591 243 615 254 637 280 655 334 705 396 656 419 625 382 609 391 613 453 [[wikipedia:Oliver Goldsmith|Oliver Goldsmith - writer]]&lt;br /&gt;
rect 450 86 584 188 [[wikipedia:Joshua Reynolds|prob.The Infant Academy 1782]]&lt;br /&gt;
rect 286 87 376 191 [[wikipedia:Joshua Reynolds|unknown painting]]&lt;br /&gt;
circle 100 141 20 [[wikipedia:Joshua Reynolds|An unknown portrait]]&lt;br /&gt;
poly 503 192 511 176 532 176 534 200 553 219 554 234 541 236 525 261 506 261 511 220 515 215 [[wikipedia:Francis Barber|servant - poss. Francis Barber]]&lt;br /&gt;
rect 12 10 702 500 [[wikipedia:The Club (Literary Club)|Use button to enlarge or use hyperlinks]]&lt;br /&gt;
&amp;lt;/imagemap&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== InputBox ==&lt;br /&gt;
; Test&lt;br /&gt;
&amp;lt;inputbox&amp;gt;&lt;br /&gt;
type=create&lt;br /&gt;
break=no&lt;br /&gt;
&amp;lt;/inputbox&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: An input box&lt;br /&gt;
&lt;br /&gt;
== Interwiki ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Interwiki]]&lt;br /&gt;
&lt;br /&gt;
== LabeledSectionTransclusion ==&lt;br /&gt;
;Test&amp;amp;#160;:{{#lst:{{FULLPAGENAME}}/Labeled Section Transclusion|test1}}&lt;br /&gt;
;Expected :This is a test.&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' In this case, the &amp;quot;Section by heading&amp;quot; must be a section in the page that is to be transcluded.&lt;br /&gt;
;Test&amp;amp;#160;:{{#lsth:{{FULLPAGENAME}}/Labeled Section Transclusion|Section by heading}}&lt;br /&gt;
;Expected :This is a section with a heading&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[{{FULLPAGENAME}}/Labeled Section Transclusion]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;section begin=test1 /&amp;gt;This is a test.&amp;lt;section end=test1 /&amp;gt;&lt;br /&gt;
Some text ...&lt;br /&gt;
&lt;br /&gt;
=== Section by heading ===&lt;br /&gt;
This is a section with a heading&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Lingo ==&lt;br /&gt;
Lingo is a glossary extension. It lets you define a list of abbreviations and their definitions on [[{{MediaWiki:Lingo-terminologypagename}}]] page and then displays these definitions whenever an abbreviation is hovered over in an article. &lt;br /&gt;
&lt;br /&gt;
Check it below:&lt;br /&gt;
&lt;br /&gt;
USA &amp;lt;- is abbreviations&lt;br /&gt;
&lt;br /&gt;
== LocalisationUpdate ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Lockdown ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Loops ==&lt;br /&gt;
; Note: this extension requires that the Variables extension also be installed&lt;br /&gt;
;Test&amp;amp;#160;: {{#vardefine: i | 1 }}{{#while:&lt;br /&gt;
 | {{#ifexpr: {{#var: i }} &amp;lt; 4 | true }}&lt;br /&gt;
 | &lt;br /&gt;
{{#var: i }} {{#vardefine: i | {{#expr: {{#var: i }} + 1 }} }}&lt;br /&gt;
}}&lt;br /&gt;
;Expected&amp;amp;#160;: 1  2  3&lt;br /&gt;
&lt;br /&gt;
== MagicNoCache ==&lt;br /&gt;
The table cell should be empty:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|__NOCACHE__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Maps ==&lt;br /&gt;
;Variant 1&lt;br /&gt;
{{#display_map:address=Brandenburg Gate, Berlin, Germany|width=200|height=150|zoom=17|type=hybrid}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate, Berlin, Germany}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
;Variant 2&lt;br /&gt;
{{#display_map: Brandenburg Gate, Berlin~Brandenburg Gate }}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
== MasonryMainPage ==&lt;br /&gt;
&amp;lt;div id=&amp;quot;mediawiki-masonry-main-page-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== MobileFrontend ==&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_mobile}} This link] should open '''mobile''' version&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_desktop}} This link] should open '''desktop''' version&lt;br /&gt;
&lt;br /&gt;
== MultimediaViewer ==&lt;br /&gt;
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 &amp;lt;code&amp;gt;Open in Media Viewer&amp;lt;/code&amp;gt; button:&lt;br /&gt;
:[[File:JoshuaReynoldsParty.jpg|50px]]&lt;br /&gt;
&lt;br /&gt;
== MyVariables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{CURRENTUSER}} &lt;br /&gt;
; Expected&amp;amp;#160;: Your user name or the IP for anonymous users&lt;br /&gt;
&lt;br /&gt;
== Nuke ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Nuke]]&lt;br /&gt;
&lt;br /&gt;
== OpenGraphMeta ==&lt;br /&gt;
;Test&lt;br /&gt;
[[File:{{#setmainimage:JoshuaReynoldsParty.jpg}}|100px]]&lt;br /&gt;
;Expected:&lt;br /&gt;
[[File:JoshuaReynoldsParty.jpg|100px]]&lt;br /&gt;
&lt;br /&gt;
== OpenID Connect ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PDF Handler ==&lt;br /&gt;
You should see the content of the uploaded PDF ([[media:Imported_vocabulary.pdf|Imported_vocabulary.pdf]]):&lt;br /&gt;
&lt;br /&gt;
[[File:Imported_vocabulary.pdf|page=1|200px|Succeeded]]&lt;br /&gt;
&lt;br /&gt;
== Page Importer ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PageForms ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Forms]]&lt;br /&gt;
&lt;br /&gt;
== PageImages ==&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=pageimages&amp;amp;titles={{PAGENAMEE}} This must not fire a warning about pageimages]&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=help&amp;amp;modules=query This should list '''pageimages''' property]&lt;br /&gt;
&lt;br /&gt;
== Parser Function Helper ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== ParserFunctions ==&lt;br /&gt;
; Test math functions: {{#expr: 4 + 6}}&lt;br /&gt;
; Expected&amp;amp;#160;: 10&lt;br /&gt;
&lt;br /&gt;
; Test string functions: {{#ifeq:{{#expr: 4 + 6}}|10|{{#ifeq:{{#len:Icecream }}|8|{{#len:Icecream }}|disabled}}}}&lt;br /&gt;
; Expected&amp;amp;#160;: {{#ifeq:{{#len:Icecream }}|8|8|disabled}}&lt;br /&gt;
&lt;br /&gt;
== ParserHooks ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Parsoid ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PluggableAuth ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Poem ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;poem&amp;gt;&lt;br /&gt;
Une terre au flanc maigre, âpre, avare, inclément&lt;br /&gt;
Où les vivants pensifs travaillent tristement, &lt;br /&gt;
::Et qui donne à regret à cette race humaine&lt;br /&gt;
Un peu de pain pour tant de labeur et de peine&amp;amp;#160;; &lt;br /&gt;
::Des hommes durs, éclos sur ces sillons ingrats&amp;amp;#160;; &lt;br /&gt;
Des cités d’où s’en vont, en se tordant les bras, &lt;br /&gt;
::La charité, la paix, la foi, sœurs vénérables&amp;amp;#160;; &lt;br /&gt;
L’orgueil chez les puissants et chez les misérables&amp;amp;#160;; &lt;br /&gt;
&amp;lt;/poem&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: A nicely formatted poem&lt;br /&gt;
&lt;br /&gt;
== Renameuser ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RenameUser]]&lt;br /&gt;
&lt;br /&gt;
== Replace Text ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ReplaceText]]&lt;br /&gt;
&lt;br /&gt;
== RevisionSlider ==&lt;br /&gt;
Check '''Browse history Interactively''' slider interface at the top of ''Difference between revisions'' page ([{{fullurl:{{FULLPAGENAME}}|action=history}} history])&lt;br /&gt;
&lt;br /&gt;
== RottenLinks ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RottenLinks]]&lt;br /&gt;
&lt;br /&gt;
== SandboxLink ==&lt;br /&gt;
'''Sandbox''' link should be added on user's personal tools menu (at the top)&lt;br /&gt;
&lt;br /&gt;
== Scribunto ==&lt;br /&gt;
=== [[Module:String]] ===&lt;br /&gt;
; Test&amp;amp;#160;: {{#invoke:String|len|This is a test.}} &lt;br /&gt;
; Expected&amp;amp;#160;: 15&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:String]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
local p = {}&lt;br /&gt;
function p.len(frame)&lt;br /&gt;
	local s = frame.args[1]&lt;br /&gt;
	return mw.ustring.len( s )&lt;br /&gt;
end&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Semantic Drilldown ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BrowseData]]&lt;br /&gt;
&lt;br /&gt;
== Semantic Internal Objects ==&lt;br /&gt;
{{#set_internal:Part of recipe&lt;br /&gt;
|Has quantity=1&lt;br /&gt;
|Has unit=cup&lt;br /&gt;
|Has ingredient=flour&lt;br /&gt;
}}&lt;br /&gt;
* Expected: 1&lt;br /&gt;
* Actual: {{#ask:[[Part of recipe::+]][[Has ingredient::flour]][[Has unit::cup]][[Has quantity::&amp;gt;.5]]&lt;br /&gt;
|mainlabel=-&lt;br /&gt;
|? Has quantity=&lt;br /&gt;
|link=none&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Semantic Meeting Minutes ==&lt;br /&gt;
[[Special:FormEdit/Meeting Minutes]] must be a valid form.&lt;br /&gt;
&lt;br /&gt;
== SemanticCompoundQueries ==&lt;br /&gt;
This should produce no error:&lt;br /&gt;
{{#compound_query: [[:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |[[File:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |link=none&lt;br /&gt;
 |format=ul&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== SemanticMediaWiki ==&lt;br /&gt;
; Test&amp;amp;#160;:[[Test::NONEXISTENTPAGE|Test]] __SHOWFACTBOX__&lt;br /&gt;
; Expected&amp;amp;#160;:[[NONEXISTENTPAGE|Test]]&lt;br /&gt;
: There should be a factbox at the page bottom.&lt;br /&gt;
&lt;br /&gt;
== SemanticResultFormats ==&lt;br /&gt;
; Test (old wikis)&lt;br /&gt;
{{#ask:[[{{FULLPAGENAME}}]]|?Test|format=datatables}}&lt;br /&gt;
; Expected&lt;br /&gt;
: A nice-looking DataTable with a search field&lt;br /&gt;
&lt;br /&gt;
== SemanticScribunto ==&lt;br /&gt;
&lt;br /&gt;
Should be an icon with information popup -&amp;gt; {{#invoke:SemanticScribuntoTest|info|some text}}&lt;br /&gt;
&lt;br /&gt;
{{#invoke:SemanticScribuntoTest|inlineInfo}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:SemanticScribuntoTest]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-- Module:SMW&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
-- set with direct return results&lt;br /&gt;
function p.info( frame )&lt;br /&gt;
&lt;br /&gt;
    if not mw.smw then&lt;br /&gt;
        return &amp;quot;mw.smw module not found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if frame.args[1] == nil then&lt;br /&gt;
        return &amp;quot;no parameter found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    local tooltip&lt;br /&gt;
    if frame.args[2] then&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1], frame.args[2] )&lt;br /&gt;
    else&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1] )&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    return tooltip&lt;br /&gt;
end&lt;br /&gt;
-- another example, info used inside another function&lt;br /&gt;
function p.inlineInfo( frame )&lt;br /&gt;
&lt;br /&gt;
    local output = 'This is sample output'&lt;br /&gt;
&lt;br /&gt;
    -- so some stuff&lt;br /&gt;
&lt;br /&gt;
    output = output .. mw.smw.info( 'This is a warning', 'warning' )&lt;br /&gt;
&lt;br /&gt;
    -- some more stuff&lt;br /&gt;
&lt;br /&gt;
    return output&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SimpleMathJax ==&lt;br /&gt;
; Note: this extension does not work with the Math extension installed&lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;math&amp;gt;\int_{(x,y)\in C} x^3\, dx + 4y^2\, dy&amp;lt;/math&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: ∫(x,y)∈Cx3dx+4y2dy (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
And if &amp;lt;code&amp;gt;SMJ&amp;lt;/code&amp;gt; added as &amp;lt;code&amp;gt;$wgSmjExtraInlineMath = [ [ 'SMJ(', ')SMJ' ] ];&amp;lt;/code&amp;gt; in LocalSettings.php file: &lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: SMJ(E=mc^2)SMJ&lt;br /&gt;
; Expected&lt;br /&gt;
: E=mc^2 (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
== SpamBlacklist ==&lt;br /&gt;
This should display the spam blacklist log: [{{fullurl:Special:Log|type=spamblacklist}} spamblacklist].&lt;br /&gt;
&lt;br /&gt;
== SubPageList ==&lt;br /&gt;
;Result&lt;br /&gt;
{{#subpagecount: }}&lt;br /&gt;
;Expected&lt;br /&gt;
An integer matching the number of pages at [[Special:PrefixIndex/{{FULLPAGENAME}}/]]&lt;br /&gt;
&lt;br /&gt;
== SyntaxHighlight ==&lt;br /&gt;
; Note: this extension make also be referred to as &amp;quot;SyntaxHighlight GeSHi&amp;quot;&lt;br /&gt;
The following must be colorful:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line start=3 highlight=&amp;quot;1,5-7&amp;quot;&amp;gt;&lt;br /&gt;
def quick_sort(arr):&lt;br /&gt;
	less = []&lt;br /&gt;
	pivot_list = []&lt;br /&gt;
	more = []&lt;br /&gt;
	if len(arr) &amp;lt;= 1:&lt;br /&gt;
		return arr&lt;br /&gt;
	else:&lt;br /&gt;
		pass&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TemplateData ==&lt;br /&gt;
[{{fullurl:Template:Test|action=edit}} This link should take you to a page with the &amp;lt;code&amp;gt;Manage TemplateData&amp;lt;/code&amp;gt; button] (normally below the first heading).&lt;br /&gt;
&lt;br /&gt;
== TextExtracts ==&lt;br /&gt;
The output should not contain &amp;lt;code&amp;gt;Unrecognized parameter: exchars&amp;lt;/code&amp;gt; error:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=extracts&amp;amp;exchars=175&amp;amp;format=json&amp;amp;titles={{FULLPAGENAMEE}} Extract]&lt;br /&gt;
&lt;br /&gt;
== Thanks ==&lt;br /&gt;
[[Special:Log/thanks]] exists.&lt;br /&gt;
&lt;br /&gt;
== TitleBlacklist ==&lt;br /&gt;
;The text should follow:&lt;br /&gt;
{{int: Titleblacklist}}&lt;br /&gt;
&lt;br /&gt;
== TwitterCards ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== UniversalLanguageSelector ==&lt;br /&gt;
No test was invented. The language selector should appear somewhere and the extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Upload Wizard ==&lt;br /&gt;
UploadWizard is displayed at [[:Special:UploadWizard]]&lt;br /&gt;
&lt;br /&gt;
== UserFunctions ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#ifanon:It works|It works}}&lt;br /&gt;
; Expected&amp;amp;#160;: It works&lt;br /&gt;
&lt;br /&gt;
== VEForAll ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Validator ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Variables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#vardefine:test|testing}}{{#var:test}}&lt;br /&gt;
; Expected&amp;amp;#160;: testing&lt;br /&gt;
&lt;br /&gt;
== VisualEditor ==&lt;br /&gt;
This should load VisualEditor in edit mode:&lt;br /&gt;
[{{fullurl:Main Page|veaction=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WhoIsWatching ==&lt;br /&gt;
Should show the number of watching users below:&lt;br /&gt;
&lt;br /&gt;
{{#whoiswatching:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Widgets ==&lt;br /&gt;
;Test&lt;br /&gt;
:{{ns:Widget}}&lt;br /&gt;
;Expected&lt;br /&gt;
:Widget&lt;br /&gt;
&lt;br /&gt;
== WikiEditor ==&lt;br /&gt;
This should load a tabbed WikiEditor:&lt;br /&gt;
[{{fullurl:Main Page|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WikiSEO ==&lt;br /&gt;
{{#seo:&lt;br /&gt;
|title=Your page title&lt;br /&gt;
|titlemode=append&lt;br /&gt;
|keywords=these,are,your,keywords&lt;br /&gt;
|description=Your meta description&lt;br /&gt;
}}&lt;br /&gt;
The page source should contain:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Your page title&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;keywords&amp;quot; content=&amp;quot;these,are,your,keywords&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There should also be a description, with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;description&amp;quot; content=&amp;quot;Your meta description&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== Wiretap ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Wiretap]]&lt;br /&gt;
&lt;br /&gt;
== YouTube ==&lt;br /&gt;
&amp;lt;youtube&amp;gt;VyBSS48E4xI&amp;lt;/youtube&amp;gt;&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2463</id>
		<title>FamilySearch Wiki:Extension tests</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2463"/>
		<updated>2023-11-11T12:27:31Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: /* SubPageList */ update&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following are tests of the extensions running on the wiki. Where applicable, if the &amp;quot;Test&amp;quot; value matches the &amp;quot;Expected&amp;quot; value, the extension can be assumed to be working.&lt;br /&gt;
[[Category:Tests]]&lt;br /&gt;
&lt;br /&gt;
== Admin Links ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:AdminLinks]]&lt;br /&gt;
&lt;br /&gt;
If you are an admin, you should see links by your personal tools.&lt;br /&gt;
&lt;br /&gt;
== AdvancedSearch ==&lt;br /&gt;
If [[#CirrusSearch]] is enabled, the extension produces the &amp;quot;Advanced Search&amp;quot; form on Special:Search. &lt;br /&gt;
&lt;br /&gt;
== Approved Revs==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ApprovedRevs]] &lt;br /&gt;
&lt;br /&gt;
== Arrays ==&lt;br /&gt;
{{#arraydefine:b|orange,red ,yellow, yellow}}&lt;br /&gt;
; Test&lt;br /&gt;
: {{#arrayprint:b}}&lt;br /&gt;
; Expected&lt;br /&gt;
: orange, red, yellow, yellow&lt;br /&gt;
&lt;br /&gt;
== BatchUserRights ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BatchUserRights]]&lt;br /&gt;
&lt;br /&gt;
== Bootstrap ==&lt;br /&gt;
:This test should be done while using the Chameleon skin; [{{fullurl:{{FULLPAGENAME}}|useskin=chameleon}} view page with useskin=chameleon]&lt;br /&gt;
This should be a greeny shadowed alert box with white text:&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-success shadow text-white font-weight-bold&amp;quot;&amp;gt;&lt;br /&gt;
I am bootstrapped&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== BootstrapComponents ==&lt;br /&gt;
Should be an accordion below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;bootstrap_accordion&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel1&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel2&amp;quot; color=&amp;quot;danger&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel3&amp;quot; active&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel4&amp;quot; color=&amp;quot;info&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
&amp;lt;/bootstrap_accordion&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Cargo ==&lt;br /&gt;
The [[Special:CargoTables]] should exist&lt;br /&gt;
&lt;br /&gt;
== CategoryTree ==&lt;br /&gt;
A category tree should be shown:&lt;br /&gt;
&amp;lt;categorytree mode=pages&amp;gt;Tests&amp;lt;/categorytree&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CharInsert ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;charinsert&amp;gt;Á&amp;lt;/charinsert&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt; [{{fullurl:{{FULLPAGENAME}}}}# Á]&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CirrusSearch ==&lt;br /&gt;
;For semantic wikis&lt;br /&gt;
The search results should display &amp;quot;'''ask'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+%23ask%3A&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
;For Cite enabled wikis&lt;br /&gt;
The search results should display &amp;quot;'''ref'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+ref&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
== Cite ==&lt;br /&gt;
; Test&lt;br /&gt;
: Text&amp;lt;ref&amp;gt;Test&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: Text&amp;lt;sup id=&amp;quot;cite_ref-1&amp;quot; class=&amp;quot;reference plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_note-1}} [1]]&amp;lt;/sup&amp;gt;&lt;br /&gt;
&amp;lt;ol class=&amp;quot;references&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li id=&amp;quot;cite_note-1&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;mw-cite-backlink plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_ref-1}} &amp;lt;span class=&amp;quot;cite-accessibility-label&amp;quot;&amp;gt;Jump up &amp;lt;/span&amp;gt;↑]&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;reference-text&amp;quot;&amp;gt;Test&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CiteThisPage ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:CiteThisPage]]&lt;br /&gt;
&lt;br /&gt;
== CodeEditor ==&lt;br /&gt;
This should open in the ACE editor interface:&lt;br /&gt;
[{{fullurl: Mediawiki:Common.css|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== CodeMirror ==&lt;br /&gt;
* The &amp;quot;Editing&amp;quot; tab on [[Special:Preferences]] should have the &amp;quot;Enable colorblind-friendly mode&amp;quot; checkbox (&amp;quot;Accessibility&amp;quot; section). &lt;br /&gt;
&lt;br /&gt;
== ContributionScores ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ContributionScores]]&lt;br /&gt;
&lt;br /&gt;
== Data Transfer ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ImportCSV]]&lt;br /&gt;
&lt;br /&gt;
== Description2 ==&lt;br /&gt;
This should produce &amp;quot;Description2 works!&amp;quot; in the description meta tag of this page head.&lt;br /&gt;
{{#description2:Description2 works!}}&lt;br /&gt;
&lt;br /&gt;
== DismissableSiteNotice ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.dismissableSiteNotice&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.dismissableSiteNotice');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== DisplayTitle==&lt;br /&gt;
;Expected: &lt;br /&gt;
{{FULLPAGENAME}}&lt;br /&gt;
;Result:&lt;br /&gt;
{{#getdisplaytitle:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Echo ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Notifications]]&lt;br /&gt;
&lt;br /&gt;
== Elastica ==&lt;br /&gt;
Usually, it is a dependency of CirrusSearch. If CirrusSearch test is passed, Elastica works. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== EmailFile ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailFile]]&lt;br /&gt;
&lt;br /&gt;
== EmailRegisteredUsers ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailRegisteredUsers]]&lt;br /&gt;
&lt;br /&gt;
== External Data ==&lt;br /&gt;
{{#get_web_data:url=https://www.semantic-mediawiki.org/wiki/Special:Ask/-5B-5BGermany-5D-5D/-3FLocated_in/format%3Dcsv/sep%3D,&lt;br /&gt;
    |format=csv with header|data=Located in=Located in}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#external_value:Located in}}&lt;br /&gt;
;Expected :Europe&lt;br /&gt;
&lt;br /&gt;
== FixedHeaderTable ==&lt;br /&gt;
Header of table below should be fixed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;fixedheadertable fixedcolumns=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header 1&lt;br /&gt;
! Header 2 &lt;br /&gt;
|- &lt;br /&gt;
| Cell 1&lt;br /&gt;
| Cell 2&lt;br /&gt;
|- &lt;br /&gt;
| Cell 3&lt;br /&gt;
| Cell 4&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/fixedheadertable&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FsLookAndFeel ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.fslookandfeel.scripts&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.fslookandfeel.scripts');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== FsSignin ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Gadgets ==&lt;br /&gt;
* [{{fullurl: Special:AllPages|from=&amp;amp;to=&amp;amp;namespace=2300}} This link] must '''not contain''' the error message &amp;quot;&amp;lt;code&amp;gt;{{SITENAME}} does not have namespace &amp;quot;2300&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
* {{#ifeq: {{NAMESPACENUMBER:Gadget:Something}}|2300|You have gadgets!|No gadgets or something went unusual...}}&lt;br /&gt;
&lt;br /&gt;
== GlobalNotice ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== GoogleTranslator ==&lt;br /&gt;
The sidebar should include an option to translate the page into different languages.&lt;br /&gt;
&lt;br /&gt;
== Header Tabs ==&lt;br /&gt;
Two tabs should be visible below.&lt;br /&gt;
= Test =&lt;br /&gt;
Content&lt;br /&gt;
= Test2 =&lt;br /&gt;
More content&lt;br /&gt;
&amp;lt;headertabs /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== HeaderFooter ==&lt;br /&gt;
The content of [[MediaWiki:hf-footer-{{FULLPAGENAME}}]] must be shown as a footer on the current page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[MediaWiki:hf-footer-{{FULLPAGENAME}}]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;card bg-dark text-white&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;card-body font-weight-bold text-center&amp;quot;&amp;gt;I am Footer&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ImageMap ==&lt;br /&gt;
&amp;lt;imagemap&amp;gt;&lt;br /&gt;
Image:JoshuaReynoldsParty.jpg|thumb|center|400px|alt=Dining room with nine men seated around a table. The dinner has been finished, and a large man at the head talks and gesticulates while the others eagerly listen. The men wear wigs and clothing of late 18th century Britain, and the furniture, hangings, and chandelier are of similar vintage. A liveried servant is entering with a tray bearing two high-shouldered decanters of wine.|Image map example. Clicking on a person in the picture causes the browser to load the appropriate article.&lt;br /&gt;
&lt;br /&gt;
poly 133 343 124 287 159 224 189 228 195 291 222 311 209 343 209 354 243 362 292 466 250 463 [[wikipedia:Samuel Johnson|Dr Johnson - Dictionary writer]]&lt;br /&gt;
poly 76 224 84 255 43 302 62 400 123 423 121 361 137 344 122 290 111 234 96 225 [[wikipedia:James Boswell|Boswell - Biographer]]&lt;br /&gt;
poly 190 276 208 240 229 228 247 238 250 258 286 319 282 323 223 323 220 301 200 295 [[wikipedia:Joshua Reynolds|Sir Joshua Reynolds - Host]]&lt;br /&gt;
poly 308 317 311 270 328 261 316 246 320 228 343 227 357 240 377 274 366 284 352 311 319 324 [[wikipedia:David Garrick|David Garrick - actor]]&lt;br /&gt;
poly 252 406 313 343 341 343 366 280 383 273 372 251 378 222 409 228 414 280 420 292 390 300 374 360 359 437 306 418 313 391 272 415 [[wikipedia:Edmund Burke|Edmund Burke - statesman]]&lt;br /&gt;
rect 418 220 452 287 [[wikipedia:Pasquale Paoli|Pasqual Paoli - Corsican patriot]]&lt;br /&gt;
poly 455 238 484 253 505 303 495 363 501 377 491 443 429 439 423 375 466 352 [[wikipedia:Charles Burney|Charles Burney - music historian]]&lt;br /&gt;
poly 501 279 546 237 567 239 572 308 560 326 537 316 530 300 502 289 [[wikipedia:Thomas Warton|Thomas Warton - poet laureate]]&lt;br /&gt;
poly 572 453 591 446 572 373 603 351 562 325 592 288 573 260 573 248 591 243 615 254 637 280 655 334 705 396 656 419 625 382 609 391 613 453 [[wikipedia:Oliver Goldsmith|Oliver Goldsmith - writer]]&lt;br /&gt;
rect 450 86 584 188 [[wikipedia:Joshua Reynolds|prob.The Infant Academy 1782]]&lt;br /&gt;
rect 286 87 376 191 [[wikipedia:Joshua Reynolds|unknown painting]]&lt;br /&gt;
circle 100 141 20 [[wikipedia:Joshua Reynolds|An unknown portrait]]&lt;br /&gt;
poly 503 192 511 176 532 176 534 200 553 219 554 234 541 236 525 261 506 261 511 220 515 215 [[wikipedia:Francis Barber|servant - poss. Francis Barber]]&lt;br /&gt;
rect 12 10 702 500 [[wikipedia:The Club (Literary Club)|Use button to enlarge or use hyperlinks]]&lt;br /&gt;
&amp;lt;/imagemap&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== InputBox ==&lt;br /&gt;
; Test&lt;br /&gt;
&amp;lt;inputbox&amp;gt;&lt;br /&gt;
type=create&lt;br /&gt;
break=no&lt;br /&gt;
&amp;lt;/inputbox&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: An input box&lt;br /&gt;
&lt;br /&gt;
== Interwiki ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Interwiki]]&lt;br /&gt;
&lt;br /&gt;
== LabeledSectionTransclusion ==&lt;br /&gt;
;Test&amp;amp;#160;:{{#lst:{{FULLPAGENAME}}/Labeled Section Transclusion|test1}}&lt;br /&gt;
;Expected :This is a test.&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' In this case, the &amp;quot;Section by heading&amp;quot; must be a section in the page that is to be transcluded.&lt;br /&gt;
;Test&amp;amp;#160;:{{#lsth:{{FULLPAGENAME}}/Labeled Section Transclusion|Section by heading}}&lt;br /&gt;
;Expected :This is a section with a heading&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[{{FULLPAGENAME}}/Labeled Section Transclusion]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;section begin=test1 /&amp;gt;This is a test.&amp;lt;section end=test1 /&amp;gt;&lt;br /&gt;
Some text ...&lt;br /&gt;
&lt;br /&gt;
=== Section by heading ===&lt;br /&gt;
This is a section with a heading&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Lingo ==&lt;br /&gt;
Lingo is a glossary extension. It lets you define a list of abbreviations and their definitions on [[{{MediaWiki:Lingo-terminologypagename}}]] page and then displays these definitions whenever an abbreviation is hovered over in an article. &lt;br /&gt;
&lt;br /&gt;
Check it below:&lt;br /&gt;
&lt;br /&gt;
USA &amp;lt;- is abbreviations&lt;br /&gt;
&lt;br /&gt;
== LocalisationUpdate ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Lockdown ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Loops ==&lt;br /&gt;
; Note: this extension requires that the Variables extension also be installed&lt;br /&gt;
;Test&amp;amp;#160;: {{#vardefine: i | 1 }}{{#while:&lt;br /&gt;
 | {{#ifexpr: {{#var: i }} &amp;lt; 4 | true }}&lt;br /&gt;
 | &lt;br /&gt;
{{#var: i }} {{#vardefine: i | {{#expr: {{#var: i }} + 1 }} }}&lt;br /&gt;
}}&lt;br /&gt;
;Expected&amp;amp;#160;: 1  2  3&lt;br /&gt;
&lt;br /&gt;
== MagicNoCache ==&lt;br /&gt;
The table cell should be empty:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|__NOCACHE__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Maps ==&lt;br /&gt;
;Variant 1&lt;br /&gt;
{{#display_map:address=Brandenburg Gate, Berlin, Germany|width=200|height=150|zoom=17|type=hybrid}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate, Berlin, Germany}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
;Variant 2&lt;br /&gt;
{{#display_map: Brandenburg Gate, Berlin~Brandenburg Gate }}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
== MasonryMainPage ==&lt;br /&gt;
&amp;lt;div id=&amp;quot;mediawiki-masonry-main-page-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== MobileFrontend ==&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_mobile}} This link] should open '''mobile''' version&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_desktop}} This link] should open '''desktop''' version&lt;br /&gt;
&lt;br /&gt;
== MultimediaViewer ==&lt;br /&gt;
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 &amp;lt;code&amp;gt;Open in Media Viewer&amp;lt;/code&amp;gt; button:&lt;br /&gt;
:[[File:JoshuaReynoldsParty.jpg|50px]]&lt;br /&gt;
&lt;br /&gt;
== MyVariables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{CURRENTUSER}} &lt;br /&gt;
; Expected&amp;amp;#160;: Your user name or the IP for anonymous users&lt;br /&gt;
&lt;br /&gt;
== Nuke ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Nuke]]&lt;br /&gt;
&lt;br /&gt;
== OpenGraphMeta ==&lt;br /&gt;
;Test&lt;br /&gt;
[[File:{{#setmainimage:JoshuaReynoldsParty.jpg}}|100px]]&lt;br /&gt;
;Expected:&lt;br /&gt;
[[File:JoshuaReynoldsParty.jpg|100px]]&lt;br /&gt;
&lt;br /&gt;
== OpenID Connect ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PDF Handler ==&lt;br /&gt;
You should see the content of the uploaded PDF ([[media:Imported_vocabulary.pdf|Imported_vocabulary.pdf]]):&lt;br /&gt;
&lt;br /&gt;
[[File:Imported_vocabulary.pdf|page=1|200px|Succeeded]]&lt;br /&gt;
&lt;br /&gt;
== Page Importer ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PageForms ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Forms]]&lt;br /&gt;
&lt;br /&gt;
== PageImages ==&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=pageimages&amp;amp;titles={{PAGENAMEE}} This must not fire a warning about pageimages]&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=help&amp;amp;modules=query This should list '''pageimages''' property]&lt;br /&gt;
&lt;br /&gt;
== Parser Function Helper ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== ParserFunctions ==&lt;br /&gt;
; Test math functions: {{#expr: 4 + 6}}&lt;br /&gt;
; Expected&amp;amp;#160;: 10&lt;br /&gt;
&lt;br /&gt;
; Test string functions: {{#ifeq:{{#expr: 4 + 6}}|10|{{#ifeq:{{#len:Icecream }}|8|{{#len:Icecream }}|disabled}}}}&lt;br /&gt;
; Expected&amp;amp;#160;: {{#ifeq:{{#len:Icecream }}|8|8|disabled}}&lt;br /&gt;
&lt;br /&gt;
== ParserHooks ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Parsoid ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PluggableAuth ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Poem ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;poem&amp;gt;&lt;br /&gt;
Une terre au flanc maigre, âpre, avare, inclément&lt;br /&gt;
Où les vivants pensifs travaillent tristement, &lt;br /&gt;
::Et qui donne à regret à cette race humaine&lt;br /&gt;
Un peu de pain pour tant de labeur et de peine&amp;amp;#160;; &lt;br /&gt;
::Des hommes durs, éclos sur ces sillons ingrats&amp;amp;#160;; &lt;br /&gt;
Des cités d’où s’en vont, en se tordant les bras, &lt;br /&gt;
::La charité, la paix, la foi, sœurs vénérables&amp;amp;#160;; &lt;br /&gt;
L’orgueil chez les puissants et chez les misérables&amp;amp;#160;; &lt;br /&gt;
&amp;lt;/poem&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: A nicely formatted poem&lt;br /&gt;
&lt;br /&gt;
== Renameuser ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RenameUser]]&lt;br /&gt;
&lt;br /&gt;
== Replace Text ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ReplaceText]]&lt;br /&gt;
&lt;br /&gt;
== RevisionSlider ==&lt;br /&gt;
Check '''Browse history Interactively''' slider interface at the top of ''Difference between revisions'' page ([{{fullurl:{{FULLPAGENAME}}|action=history}} history])&lt;br /&gt;
&lt;br /&gt;
== RottenLinks ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RottenLinks]]&lt;br /&gt;
&lt;br /&gt;
== SandboxLink ==&lt;br /&gt;
'''Sandbox''' link should be added on user's personal tools menu (at the top)&lt;br /&gt;
&lt;br /&gt;
== Scribunto ==&lt;br /&gt;
=== [[Module:String]] ===&lt;br /&gt;
; Test&amp;amp;#160;: {{#invoke:String|len|This is a test.}} &lt;br /&gt;
; Expected&amp;amp;#160;: 15&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:String]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
local p = {}&lt;br /&gt;
function p.len(frame)&lt;br /&gt;
	local s = frame.args[1]&lt;br /&gt;
	return mw.ustring.len( s )&lt;br /&gt;
end&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Semantic Drilldown ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BrowseData]]&lt;br /&gt;
&lt;br /&gt;
== Semantic Internal Objects ==&lt;br /&gt;
{{#set_internal:Part of recipe&lt;br /&gt;
|Has quantity=1&lt;br /&gt;
|Has unit=cup&lt;br /&gt;
|Has ingredient=flour&lt;br /&gt;
}}&lt;br /&gt;
* Expected: 1&lt;br /&gt;
* Actual: {{#ask:[[Part of recipe::+]][[Has ingredient::flour]][[Has unit::cup]][[Has quantity::&amp;gt;.5]]&lt;br /&gt;
|mainlabel=-&lt;br /&gt;
|? Has quantity=&lt;br /&gt;
|link=none&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Semantic Meeting Minutes ==&lt;br /&gt;
[[Special:FormEdit/Meeting Minutes]] must be a valid form.&lt;br /&gt;
&lt;br /&gt;
== SemanticCompoundQueries ==&lt;br /&gt;
This should produce no error:&lt;br /&gt;
{{#compound_query: [[:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |[[File:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |link=none&lt;br /&gt;
 |format=ul&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== SemanticMediaWiki ==&lt;br /&gt;
; Test&amp;amp;#160;:[[Test::NONEXISTENTPAGE|Test]] __SHOWFACTBOX__&lt;br /&gt;
; Expected&amp;amp;#160;:[[NONEXISTENTPAGE|Test]]&lt;br /&gt;
: There should be a factbox at the page bottom.&lt;br /&gt;
&lt;br /&gt;
== SemanticResultFormats ==&lt;br /&gt;
; Test (old wikis)&lt;br /&gt;
{{#ask:[[{{FULLPAGENAME}}]]|?Test|format=datatables}}&lt;br /&gt;
; Expected&lt;br /&gt;
: A nice-looking DataTable with a search field&lt;br /&gt;
&lt;br /&gt;
== SemanticScribunto ==&lt;br /&gt;
&lt;br /&gt;
Should be an icon with information popup -&amp;gt; {{#invoke:SemanticScribuntoTest|info|some text}}&lt;br /&gt;
&lt;br /&gt;
{{#invoke:SemanticScribuntoTest|inlineInfo}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:SemanticScribuntoTest]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-- Module:SMW&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
-- set with direct return results&lt;br /&gt;
function p.info( frame )&lt;br /&gt;
&lt;br /&gt;
    if not mw.smw then&lt;br /&gt;
        return &amp;quot;mw.smw module not found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if frame.args[1] == nil then&lt;br /&gt;
        return &amp;quot;no parameter found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    local tooltip&lt;br /&gt;
    if frame.args[2] then&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1], frame.args[2] )&lt;br /&gt;
    else&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1] )&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    return tooltip&lt;br /&gt;
end&lt;br /&gt;
-- another example, info used inside another function&lt;br /&gt;
function p.inlineInfo( frame )&lt;br /&gt;
&lt;br /&gt;
    local output = 'This is sample output'&lt;br /&gt;
&lt;br /&gt;
    -- so some stuff&lt;br /&gt;
&lt;br /&gt;
    output = output .. mw.smw.info( 'This is a warning', 'warning' )&lt;br /&gt;
&lt;br /&gt;
    -- some more stuff&lt;br /&gt;
&lt;br /&gt;
    return output&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SimpleMathJax ==&lt;br /&gt;
; Note: this extension does not work with the Math extension installed&lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;math&amp;gt;\int_{(x,y)\in C} x^3\, dx + 4y^2\, dy&amp;lt;/math&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: ∫(x,y)∈Cx3dx+4y2dy (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
And if &amp;lt;code&amp;gt;SMJ&amp;lt;/code&amp;gt; added as &amp;lt;code&amp;gt;$wgSmjExtraInlineMath = [ [ 'SMJ(', ')SMJ' ] ];&amp;lt;/code&amp;gt; in LocalSettings.php file: &lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: SMJ(E=mc^2)SMJ&lt;br /&gt;
; Expected&lt;br /&gt;
: E=mc^2 (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
== SpamBlacklist ==&lt;br /&gt;
This should display the spam blacklist log: [{{fullurl:Special:Log|type=spamblacklist}} spamblacklist].&lt;br /&gt;
&lt;br /&gt;
== SubPageList ==&lt;br /&gt;
;Result&lt;br /&gt;
{{#subpagecount: }}&lt;br /&gt;
;Expected&lt;br /&gt;
An integer matching the number of pages at [[Special:PrefixIndex/{{FULLPAGENAME}}/]]&lt;br /&gt;
&lt;br /&gt;
== SyntaxHighlight ==&lt;br /&gt;
; Note: this extension make also be referred to as &amp;quot;SyntaxHighlight GeSHi&amp;quot;&lt;br /&gt;
The following must be colorful:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line start=3 highlight=&amp;quot;1,5-7&amp;quot;&amp;gt;&lt;br /&gt;
def quick_sort(arr):&lt;br /&gt;
	less = []&lt;br /&gt;
	pivot_list = []&lt;br /&gt;
	more = []&lt;br /&gt;
	if len(arr) &amp;lt;= 1:&lt;br /&gt;
		return arr&lt;br /&gt;
	else:&lt;br /&gt;
		pass&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TemplateData ==&lt;br /&gt;
[{{fullurl:Template:Test|action=edit}} This link should take you to a page with the &amp;lt;code&amp;gt;Manage TemplateData&amp;lt;/code&amp;gt; button] (normally below the first heading).&lt;br /&gt;
&lt;br /&gt;
== TextExtracts ==&lt;br /&gt;
The output should not contain &amp;lt;code&amp;gt;Unrecognized parameter: exchars&amp;lt;/code&amp;gt; error:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=extracts&amp;amp;exchars=175&amp;amp;format=json&amp;amp;titles={{FULLPAGENAMEE}} Extract]&lt;br /&gt;
&lt;br /&gt;
== Thanks ==&lt;br /&gt;
[[Special:Log/thanks]] exists.&lt;br /&gt;
&lt;br /&gt;
== TitleBlacklist ==&lt;br /&gt;
;The text should follow:&lt;br /&gt;
{{int: Titleblacklist}}&lt;br /&gt;
&lt;br /&gt;
== TwitterCards ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== UniversalLanguageSelector ==&lt;br /&gt;
No test was invented. The language selector should appear somewhere and the extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Upload Wizard ==&lt;br /&gt;
UploadWizard is displayed at [[:Special:UploadWizard]]&lt;br /&gt;
&lt;br /&gt;
== UserFunctions ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#ifanon:It works|It works}}&lt;br /&gt;
; Expected&amp;amp;#160;: It works&lt;br /&gt;
&lt;br /&gt;
== VEForAll ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Validator ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Variables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#vardefine:test|testing}}{{#var:test}}&lt;br /&gt;
; Expected&amp;amp;#160;: testing&lt;br /&gt;
&lt;br /&gt;
== VisualEditor ==&lt;br /&gt;
This should load VisualEditor in edit mode:&lt;br /&gt;
[{{fullurl:Main Page|veaction=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WhoIsWatching ==&lt;br /&gt;
Should show the number of watching users below:&lt;br /&gt;
&lt;br /&gt;
{{#whoiswatching:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Widgets ==&lt;br /&gt;
;Test&lt;br /&gt;
:{{ns:Widget}}&lt;br /&gt;
;Expected&lt;br /&gt;
:Widget&lt;br /&gt;
&lt;br /&gt;
== WikiEditor ==&lt;br /&gt;
This should load a tabbed WikiEditor:&lt;br /&gt;
[{{fullurl:Main Page|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WikiSEO ==&lt;br /&gt;
{{#seo:&lt;br /&gt;
|title=Your page title&lt;br /&gt;
|titlemode=append&lt;br /&gt;
|keywords=these,are,your,keywords&lt;br /&gt;
|description=Your meta description&lt;br /&gt;
}}&lt;br /&gt;
The page source should contain:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Your page title&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;keywords&amp;quot; content=&amp;quot;these,are,your,keywords&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There should also be a description, with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;description&amp;quot; content=&amp;quot;Your meta description&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== Wiretap ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Wiretap]]&lt;br /&gt;
&lt;br /&gt;
== YouTube ==&lt;br /&gt;
&amp;lt;youtube&amp;gt;VyBSS48E4xI&amp;lt;/youtube&amp;gt;&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2462</id>
		<title>FamilySearch Wiki:Extension tests</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2462"/>
		<updated>2023-11-11T12:10:07Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: /* WikiSEO */ update test&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following are tests of the extensions running on the wiki. Where applicable, if the &amp;quot;Test&amp;quot; value matches the &amp;quot;Expected&amp;quot; value, the extension can be assumed to be working.&lt;br /&gt;
[[Category:Tests]]&lt;br /&gt;
&lt;br /&gt;
== Admin Links ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:AdminLinks]]&lt;br /&gt;
&lt;br /&gt;
If you are an admin, you should see links by your personal tools.&lt;br /&gt;
&lt;br /&gt;
== AdvancedSearch ==&lt;br /&gt;
If [[#CirrusSearch]] is enabled, the extension produces the &amp;quot;Advanced Search&amp;quot; form on Special:Search. &lt;br /&gt;
&lt;br /&gt;
== Approved Revs==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ApprovedRevs]] &lt;br /&gt;
&lt;br /&gt;
== Arrays ==&lt;br /&gt;
{{#arraydefine:b|orange,red ,yellow, yellow}}&lt;br /&gt;
; Test&lt;br /&gt;
: {{#arrayprint:b}}&lt;br /&gt;
; Expected&lt;br /&gt;
: orange, red, yellow, yellow&lt;br /&gt;
&lt;br /&gt;
== BatchUserRights ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BatchUserRights]]&lt;br /&gt;
&lt;br /&gt;
== Bootstrap ==&lt;br /&gt;
:This test should be done while using the Chameleon skin; [{{fullurl:{{FULLPAGENAME}}|useskin=chameleon}} view page with useskin=chameleon]&lt;br /&gt;
This should be a greeny shadowed alert box with white text:&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-success shadow text-white font-weight-bold&amp;quot;&amp;gt;&lt;br /&gt;
I am bootstrapped&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== BootstrapComponents ==&lt;br /&gt;
Should be an accordion below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;bootstrap_accordion&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel1&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel2&amp;quot; color=&amp;quot;danger&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel3&amp;quot; active&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel4&amp;quot; color=&amp;quot;info&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
&amp;lt;/bootstrap_accordion&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Cargo ==&lt;br /&gt;
The [[Special:CargoTables]] should exist&lt;br /&gt;
&lt;br /&gt;
== CategoryTree ==&lt;br /&gt;
A category tree should be shown:&lt;br /&gt;
&amp;lt;categorytree mode=pages&amp;gt;Tests&amp;lt;/categorytree&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CharInsert ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;charinsert&amp;gt;Á&amp;lt;/charinsert&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt; [{{fullurl:{{FULLPAGENAME}}}}# Á]&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CirrusSearch ==&lt;br /&gt;
;For semantic wikis&lt;br /&gt;
The search results should display &amp;quot;'''ask'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+%23ask%3A&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
;For Cite enabled wikis&lt;br /&gt;
The search results should display &amp;quot;'''ref'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+ref&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
== Cite ==&lt;br /&gt;
; Test&lt;br /&gt;
: Text&amp;lt;ref&amp;gt;Test&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: Text&amp;lt;sup id=&amp;quot;cite_ref-1&amp;quot; class=&amp;quot;reference plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_note-1}} [1]]&amp;lt;/sup&amp;gt;&lt;br /&gt;
&amp;lt;ol class=&amp;quot;references&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li id=&amp;quot;cite_note-1&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;mw-cite-backlink plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_ref-1}} &amp;lt;span class=&amp;quot;cite-accessibility-label&amp;quot;&amp;gt;Jump up &amp;lt;/span&amp;gt;↑]&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;reference-text&amp;quot;&amp;gt;Test&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CiteThisPage ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:CiteThisPage]]&lt;br /&gt;
&lt;br /&gt;
== CodeEditor ==&lt;br /&gt;
This should open in the ACE editor interface:&lt;br /&gt;
[{{fullurl: Mediawiki:Common.css|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== CodeMirror ==&lt;br /&gt;
* The &amp;quot;Editing&amp;quot; tab on [[Special:Preferences]] should have the &amp;quot;Enable colorblind-friendly mode&amp;quot; checkbox (&amp;quot;Accessibility&amp;quot; section). &lt;br /&gt;
&lt;br /&gt;
== ContributionScores ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ContributionScores]]&lt;br /&gt;
&lt;br /&gt;
== Data Transfer ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ImportCSV]]&lt;br /&gt;
&lt;br /&gt;
== Description2 ==&lt;br /&gt;
This should produce &amp;quot;Description2 works!&amp;quot; in the description meta tag of this page head.&lt;br /&gt;
{{#description2:Description2 works!}}&lt;br /&gt;
&lt;br /&gt;
== DismissableSiteNotice ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.dismissableSiteNotice&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.dismissableSiteNotice');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== DisplayTitle==&lt;br /&gt;
;Expected: &lt;br /&gt;
{{FULLPAGENAME}}&lt;br /&gt;
;Result:&lt;br /&gt;
{{#getdisplaytitle:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Echo ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Notifications]]&lt;br /&gt;
&lt;br /&gt;
== Elastica ==&lt;br /&gt;
Usually, it is a dependency of CirrusSearch. If CirrusSearch test is passed, Elastica works. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== EmailFile ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailFile]]&lt;br /&gt;
&lt;br /&gt;
== EmailRegisteredUsers ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailRegisteredUsers]]&lt;br /&gt;
&lt;br /&gt;
== External Data ==&lt;br /&gt;
{{#get_web_data:url=https://www.semantic-mediawiki.org/wiki/Special:Ask/-5B-5BGermany-5D-5D/-3FLocated_in/format%3Dcsv/sep%3D,&lt;br /&gt;
    |format=csv with header|data=Located in=Located in}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#external_value:Located in}}&lt;br /&gt;
;Expected :Europe&lt;br /&gt;
&lt;br /&gt;
== FixedHeaderTable ==&lt;br /&gt;
Header of table below should be fixed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;fixedheadertable fixedcolumns=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header 1&lt;br /&gt;
! Header 2 &lt;br /&gt;
|- &lt;br /&gt;
| Cell 1&lt;br /&gt;
| Cell 2&lt;br /&gt;
|- &lt;br /&gt;
| Cell 3&lt;br /&gt;
| Cell 4&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/fixedheadertable&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FsLookAndFeel ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.fslookandfeel.scripts&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.fslookandfeel.scripts');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== FsSignin ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Gadgets ==&lt;br /&gt;
* [{{fullurl: Special:AllPages|from=&amp;amp;to=&amp;amp;namespace=2300}} This link] must '''not contain''' the error message &amp;quot;&amp;lt;code&amp;gt;{{SITENAME}} does not have namespace &amp;quot;2300&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
* {{#ifeq: {{NAMESPACENUMBER:Gadget:Something}}|2300|You have gadgets!|No gadgets or something went unusual...}}&lt;br /&gt;
&lt;br /&gt;
== GlobalNotice ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== GoogleTranslator ==&lt;br /&gt;
The sidebar should include an option to translate the page into different languages.&lt;br /&gt;
&lt;br /&gt;
== Header Tabs ==&lt;br /&gt;
Two tabs should be visible below.&lt;br /&gt;
= Test =&lt;br /&gt;
Content&lt;br /&gt;
= Test2 =&lt;br /&gt;
More content&lt;br /&gt;
&amp;lt;headertabs /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== HeaderFooter ==&lt;br /&gt;
The content of [[MediaWiki:hf-footer-{{FULLPAGENAME}}]] must be shown as a footer on the current page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[MediaWiki:hf-footer-{{FULLPAGENAME}}]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;card bg-dark text-white&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;card-body font-weight-bold text-center&amp;quot;&amp;gt;I am Footer&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ImageMap ==&lt;br /&gt;
&amp;lt;imagemap&amp;gt;&lt;br /&gt;
Image:JoshuaReynoldsParty.jpg|thumb|center|400px|alt=Dining room with nine men seated around a table. The dinner has been finished, and a large man at the head talks and gesticulates while the others eagerly listen. The men wear wigs and clothing of late 18th century Britain, and the furniture, hangings, and chandelier are of similar vintage. A liveried servant is entering with a tray bearing two high-shouldered decanters of wine.|Image map example. Clicking on a person in the picture causes the browser to load the appropriate article.&lt;br /&gt;
&lt;br /&gt;
poly 133 343 124 287 159 224 189 228 195 291 222 311 209 343 209 354 243 362 292 466 250 463 [[wikipedia:Samuel Johnson|Dr Johnson - Dictionary writer]]&lt;br /&gt;
poly 76 224 84 255 43 302 62 400 123 423 121 361 137 344 122 290 111 234 96 225 [[wikipedia:James Boswell|Boswell - Biographer]]&lt;br /&gt;
poly 190 276 208 240 229 228 247 238 250 258 286 319 282 323 223 323 220 301 200 295 [[wikipedia:Joshua Reynolds|Sir Joshua Reynolds - Host]]&lt;br /&gt;
poly 308 317 311 270 328 261 316 246 320 228 343 227 357 240 377 274 366 284 352 311 319 324 [[wikipedia:David Garrick|David Garrick - actor]]&lt;br /&gt;
poly 252 406 313 343 341 343 366 280 383 273 372 251 378 222 409 228 414 280 420 292 390 300 374 360 359 437 306 418 313 391 272 415 [[wikipedia:Edmund Burke|Edmund Burke - statesman]]&lt;br /&gt;
rect 418 220 452 287 [[wikipedia:Pasquale Paoli|Pasqual Paoli - Corsican patriot]]&lt;br /&gt;
poly 455 238 484 253 505 303 495 363 501 377 491 443 429 439 423 375 466 352 [[wikipedia:Charles Burney|Charles Burney - music historian]]&lt;br /&gt;
poly 501 279 546 237 567 239 572 308 560 326 537 316 530 300 502 289 [[wikipedia:Thomas Warton|Thomas Warton - poet laureate]]&lt;br /&gt;
poly 572 453 591 446 572 373 603 351 562 325 592 288 573 260 573 248 591 243 615 254 637 280 655 334 705 396 656 419 625 382 609 391 613 453 [[wikipedia:Oliver Goldsmith|Oliver Goldsmith - writer]]&lt;br /&gt;
rect 450 86 584 188 [[wikipedia:Joshua Reynolds|prob.The Infant Academy 1782]]&lt;br /&gt;
rect 286 87 376 191 [[wikipedia:Joshua Reynolds|unknown painting]]&lt;br /&gt;
circle 100 141 20 [[wikipedia:Joshua Reynolds|An unknown portrait]]&lt;br /&gt;
poly 503 192 511 176 532 176 534 200 553 219 554 234 541 236 525 261 506 261 511 220 515 215 [[wikipedia:Francis Barber|servant - poss. Francis Barber]]&lt;br /&gt;
rect 12 10 702 500 [[wikipedia:The Club (Literary Club)|Use button to enlarge or use hyperlinks]]&lt;br /&gt;
&amp;lt;/imagemap&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== InputBox ==&lt;br /&gt;
; Test&lt;br /&gt;
&amp;lt;inputbox&amp;gt;&lt;br /&gt;
type=create&lt;br /&gt;
break=no&lt;br /&gt;
&amp;lt;/inputbox&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: An input box&lt;br /&gt;
&lt;br /&gt;
== Interwiki ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Interwiki]]&lt;br /&gt;
&lt;br /&gt;
== LabeledSectionTransclusion ==&lt;br /&gt;
;Test&amp;amp;#160;:{{#lst:{{FULLPAGENAME}}/Labeled Section Transclusion|test1}}&lt;br /&gt;
;Expected :This is a test.&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' In this case, the &amp;quot;Section by heading&amp;quot; must be a section in the page that is to be transcluded.&lt;br /&gt;
;Test&amp;amp;#160;:{{#lsth:{{FULLPAGENAME}}/Labeled Section Transclusion|Section by heading}}&lt;br /&gt;
;Expected :This is a section with a heading&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[{{FULLPAGENAME}}/Labeled Section Transclusion]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;section begin=test1 /&amp;gt;This is a test.&amp;lt;section end=test1 /&amp;gt;&lt;br /&gt;
Some text ...&lt;br /&gt;
&lt;br /&gt;
=== Section by heading ===&lt;br /&gt;
This is a section with a heading&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Lingo ==&lt;br /&gt;
Lingo is a glossary extension. It lets you define a list of abbreviations and their definitions on [[{{MediaWiki:Lingo-terminologypagename}}]] page and then displays these definitions whenever an abbreviation is hovered over in an article. &lt;br /&gt;
&lt;br /&gt;
Check it below:&lt;br /&gt;
&lt;br /&gt;
USA &amp;lt;- is abbreviations&lt;br /&gt;
&lt;br /&gt;
== LocalisationUpdate ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Lockdown ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Loops ==&lt;br /&gt;
; Note: this extension requires that the Variables extension also be installed&lt;br /&gt;
;Test&amp;amp;#160;: {{#vardefine: i | 1 }}{{#while:&lt;br /&gt;
 | {{#ifexpr: {{#var: i }} &amp;lt; 4 | true }}&lt;br /&gt;
 | &lt;br /&gt;
{{#var: i }} {{#vardefine: i | {{#expr: {{#var: i }} + 1 }} }}&lt;br /&gt;
}}&lt;br /&gt;
;Expected&amp;amp;#160;: 1  2  3&lt;br /&gt;
&lt;br /&gt;
== MagicNoCache ==&lt;br /&gt;
The table cell should be empty:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|__NOCACHE__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Maps ==&lt;br /&gt;
;Variant 1&lt;br /&gt;
{{#display_map:address=Brandenburg Gate, Berlin, Germany|width=200|height=150|zoom=17|type=hybrid}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate, Berlin, Germany}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
;Variant 2&lt;br /&gt;
{{#display_map: Brandenburg Gate, Berlin~Brandenburg Gate }}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
== MasonryMainPage ==&lt;br /&gt;
&amp;lt;div id=&amp;quot;mediawiki-masonry-main-page-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== MobileFrontend ==&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_mobile}} This link] should open '''mobile''' version&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_desktop}} This link] should open '''desktop''' version&lt;br /&gt;
&lt;br /&gt;
== MultimediaViewer ==&lt;br /&gt;
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 &amp;lt;code&amp;gt;Open in Media Viewer&amp;lt;/code&amp;gt; button:&lt;br /&gt;
:[[File:JoshuaReynoldsParty.jpg|50px]]&lt;br /&gt;
&lt;br /&gt;
== MyVariables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{CURRENTUSER}} &lt;br /&gt;
; Expected&amp;amp;#160;: Your user name or the IP for anonymous users&lt;br /&gt;
&lt;br /&gt;
== Nuke ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Nuke]]&lt;br /&gt;
&lt;br /&gt;
== OpenGraphMeta ==&lt;br /&gt;
;Test&lt;br /&gt;
[[File:{{#setmainimage:JoshuaReynoldsParty.jpg}}|100px]]&lt;br /&gt;
;Expected:&lt;br /&gt;
[[File:JoshuaReynoldsParty.jpg|100px]]&lt;br /&gt;
&lt;br /&gt;
== OpenID Connect ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PDF Handler ==&lt;br /&gt;
You should see the content of the uploaded PDF ([[media:Imported_vocabulary.pdf|Imported_vocabulary.pdf]]):&lt;br /&gt;
&lt;br /&gt;
[[File:Imported_vocabulary.pdf|page=1|200px|Succeeded]]&lt;br /&gt;
&lt;br /&gt;
== Page Importer ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PageForms ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Forms]]&lt;br /&gt;
&lt;br /&gt;
== PageImages ==&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=pageimages&amp;amp;titles={{PAGENAMEE}} This must not fire a warning about pageimages]&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=help&amp;amp;modules=query This should list '''pageimages''' property]&lt;br /&gt;
&lt;br /&gt;
== Parser Function Helper ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== ParserFunctions ==&lt;br /&gt;
; Test math functions: {{#expr: 4 + 6}}&lt;br /&gt;
; Expected&amp;amp;#160;: 10&lt;br /&gt;
&lt;br /&gt;
; Test string functions: {{#ifeq:{{#expr: 4 + 6}}|10|{{#ifeq:{{#len:Icecream }}|8|{{#len:Icecream }}|disabled}}}}&lt;br /&gt;
; Expected&amp;amp;#160;: {{#ifeq:{{#len:Icecream }}|8|8|disabled}}&lt;br /&gt;
&lt;br /&gt;
== ParserHooks ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Parsoid ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PluggableAuth ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Poem ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;poem&amp;gt;&lt;br /&gt;
Une terre au flanc maigre, âpre, avare, inclément&lt;br /&gt;
Où les vivants pensifs travaillent tristement, &lt;br /&gt;
::Et qui donne à regret à cette race humaine&lt;br /&gt;
Un peu de pain pour tant de labeur et de peine&amp;amp;#160;; &lt;br /&gt;
::Des hommes durs, éclos sur ces sillons ingrats&amp;amp;#160;; &lt;br /&gt;
Des cités d’où s’en vont, en se tordant les bras, &lt;br /&gt;
::La charité, la paix, la foi, sœurs vénérables&amp;amp;#160;; &lt;br /&gt;
L’orgueil chez les puissants et chez les misérables&amp;amp;#160;; &lt;br /&gt;
&amp;lt;/poem&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: A nicely formatted poem&lt;br /&gt;
&lt;br /&gt;
== Renameuser ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RenameUser]]&lt;br /&gt;
&lt;br /&gt;
== Replace Text ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ReplaceText]]&lt;br /&gt;
&lt;br /&gt;
== RevisionSlider ==&lt;br /&gt;
Check '''Browse history Interactively''' slider interface at the top of ''Difference between revisions'' page ([{{fullurl:{{FULLPAGENAME}}|action=history}} history])&lt;br /&gt;
&lt;br /&gt;
== RottenLinks ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RottenLinks]]&lt;br /&gt;
&lt;br /&gt;
== SandboxLink ==&lt;br /&gt;
'''Sandbox''' link should be added on user's personal tools menu (at the top)&lt;br /&gt;
&lt;br /&gt;
== Scribunto ==&lt;br /&gt;
=== [[Module:String]] ===&lt;br /&gt;
; Test&amp;amp;#160;: {{#invoke:String|len|This is a test.}} &lt;br /&gt;
; Expected&amp;amp;#160;: 15&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:String]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
local p = {}&lt;br /&gt;
function p.len(frame)&lt;br /&gt;
	local s = frame.args[1]&lt;br /&gt;
	return mw.ustring.len( s )&lt;br /&gt;
end&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Semantic Drilldown ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BrowseData]]&lt;br /&gt;
&lt;br /&gt;
== Semantic Internal Objects ==&lt;br /&gt;
{{#set_internal:Part of recipe&lt;br /&gt;
|Has quantity=1&lt;br /&gt;
|Has unit=cup&lt;br /&gt;
|Has ingredient=flour&lt;br /&gt;
}}&lt;br /&gt;
* Expected: 1&lt;br /&gt;
* Actual: {{#ask:[[Part of recipe::+]][[Has ingredient::flour]][[Has unit::cup]][[Has quantity::&amp;gt;.5]]&lt;br /&gt;
|mainlabel=-&lt;br /&gt;
|? Has quantity=&lt;br /&gt;
|link=none&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Semantic Meeting Minutes ==&lt;br /&gt;
[[Special:FormEdit/Meeting Minutes]] must be a valid form.&lt;br /&gt;
&lt;br /&gt;
== SemanticCompoundQueries ==&lt;br /&gt;
This should produce no error:&lt;br /&gt;
{{#compound_query: [[:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |[[File:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |link=none&lt;br /&gt;
 |format=ul&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== SemanticMediaWiki ==&lt;br /&gt;
; Test&amp;amp;#160;:[[Test::NONEXISTENTPAGE|Test]] __SHOWFACTBOX__&lt;br /&gt;
; Expected&amp;amp;#160;:[[NONEXISTENTPAGE|Test]]&lt;br /&gt;
: There should be a factbox at the page bottom.&lt;br /&gt;
&lt;br /&gt;
== SemanticResultFormats ==&lt;br /&gt;
; Test (old wikis)&lt;br /&gt;
{{#ask:[[{{FULLPAGENAME}}]]|?Test|format=datatables}}&lt;br /&gt;
; Expected&lt;br /&gt;
: A nice-looking DataTable with a search field&lt;br /&gt;
&lt;br /&gt;
== SemanticScribunto ==&lt;br /&gt;
&lt;br /&gt;
Should be an icon with information popup -&amp;gt; {{#invoke:SemanticScribuntoTest|info|some text}}&lt;br /&gt;
&lt;br /&gt;
{{#invoke:SemanticScribuntoTest|inlineInfo}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:SemanticScribuntoTest]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-- Module:SMW&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
-- set with direct return results&lt;br /&gt;
function p.info( frame )&lt;br /&gt;
&lt;br /&gt;
    if not mw.smw then&lt;br /&gt;
        return &amp;quot;mw.smw module not found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if frame.args[1] == nil then&lt;br /&gt;
        return &amp;quot;no parameter found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    local tooltip&lt;br /&gt;
    if frame.args[2] then&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1], frame.args[2] )&lt;br /&gt;
    else&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1] )&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    return tooltip&lt;br /&gt;
end&lt;br /&gt;
-- another example, info used inside another function&lt;br /&gt;
function p.inlineInfo( frame )&lt;br /&gt;
&lt;br /&gt;
    local output = 'This is sample output'&lt;br /&gt;
&lt;br /&gt;
    -- so some stuff&lt;br /&gt;
&lt;br /&gt;
    output = output .. mw.smw.info( 'This is a warning', 'warning' )&lt;br /&gt;
&lt;br /&gt;
    -- some more stuff&lt;br /&gt;
&lt;br /&gt;
    return output&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SimpleMathJax ==&lt;br /&gt;
; Note: this extension does not work with the Math extension installed&lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;math&amp;gt;\int_{(x,y)\in C} x^3\, dx + 4y^2\, dy&amp;lt;/math&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: ∫(x,y)∈Cx3dx+4y2dy (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
And if &amp;lt;code&amp;gt;SMJ&amp;lt;/code&amp;gt; added as &amp;lt;code&amp;gt;$wgSmjExtraInlineMath = [ [ 'SMJ(', ')SMJ' ] ];&amp;lt;/code&amp;gt; in LocalSettings.php file: &lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: SMJ(E=mc^2)SMJ&lt;br /&gt;
; Expected&lt;br /&gt;
: E=mc^2 (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
== SpamBlacklist ==&lt;br /&gt;
This should display the spam blacklist log: [{{fullurl:Special:Log|type=spamblacklist}} spamblacklist].&lt;br /&gt;
&lt;br /&gt;
== SubPageList ==&lt;br /&gt;
;Result&lt;br /&gt;
{{#subpagecount: }}&lt;br /&gt;
;Expected&lt;br /&gt;
0&lt;br /&gt;
&lt;br /&gt;
== SyntaxHighlight ==&lt;br /&gt;
; Note: this extension make also be referred to as &amp;quot;SyntaxHighlight GeSHi&amp;quot;&lt;br /&gt;
The following must be colorful:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line start=3 highlight=&amp;quot;1,5-7&amp;quot;&amp;gt;&lt;br /&gt;
def quick_sort(arr):&lt;br /&gt;
	less = []&lt;br /&gt;
	pivot_list = []&lt;br /&gt;
	more = []&lt;br /&gt;
	if len(arr) &amp;lt;= 1:&lt;br /&gt;
		return arr&lt;br /&gt;
	else:&lt;br /&gt;
		pass&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TemplateData ==&lt;br /&gt;
[{{fullurl:Template:Test|action=edit}} This link should take you to a page with the &amp;lt;code&amp;gt;Manage TemplateData&amp;lt;/code&amp;gt; button] (normally below the first heading).&lt;br /&gt;
&lt;br /&gt;
== TextExtracts ==&lt;br /&gt;
The output should not contain &amp;lt;code&amp;gt;Unrecognized parameter: exchars&amp;lt;/code&amp;gt; error:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=extracts&amp;amp;exchars=175&amp;amp;format=json&amp;amp;titles={{FULLPAGENAMEE}} Extract]&lt;br /&gt;
&lt;br /&gt;
== Thanks ==&lt;br /&gt;
[[Special:Log/thanks]] exists.&lt;br /&gt;
&lt;br /&gt;
== TitleBlacklist ==&lt;br /&gt;
;The text should follow:&lt;br /&gt;
{{int: Titleblacklist}}&lt;br /&gt;
&lt;br /&gt;
== TwitterCards ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== UniversalLanguageSelector ==&lt;br /&gt;
No test was invented. The language selector should appear somewhere and the extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Upload Wizard ==&lt;br /&gt;
UploadWizard is displayed at [[:Special:UploadWizard]]&lt;br /&gt;
&lt;br /&gt;
== UserFunctions ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#ifanon:It works|It works}}&lt;br /&gt;
; Expected&amp;amp;#160;: It works&lt;br /&gt;
&lt;br /&gt;
== VEForAll ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Validator ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Variables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#vardefine:test|testing}}{{#var:test}}&lt;br /&gt;
; Expected&amp;amp;#160;: testing&lt;br /&gt;
&lt;br /&gt;
== VisualEditor ==&lt;br /&gt;
This should load VisualEditor in edit mode:&lt;br /&gt;
[{{fullurl:Main Page|veaction=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WhoIsWatching ==&lt;br /&gt;
Should show the number of watching users below:&lt;br /&gt;
&lt;br /&gt;
{{#whoiswatching:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Widgets ==&lt;br /&gt;
;Test&lt;br /&gt;
:{{ns:Widget}}&lt;br /&gt;
;Expected&lt;br /&gt;
:Widget&lt;br /&gt;
&lt;br /&gt;
== WikiEditor ==&lt;br /&gt;
This should load a tabbed WikiEditor:&lt;br /&gt;
[{{fullurl:Main Page|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WikiSEO ==&lt;br /&gt;
{{#seo:&lt;br /&gt;
|title=Your page title&lt;br /&gt;
|titlemode=append&lt;br /&gt;
|keywords=these,are,your,keywords&lt;br /&gt;
|description=Your meta description&lt;br /&gt;
}}&lt;br /&gt;
The page source should contain:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Your page title&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;keywords&amp;quot; content=&amp;quot;these,are,your,keywords&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There should also be a description, with&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;description&amp;quot; content=&amp;quot;Your meta description&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== Wiretap ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Wiretap]]&lt;br /&gt;
&lt;br /&gt;
== YouTube ==&lt;br /&gt;
&amp;lt;youtube&amp;gt;VyBSS48E4xI&amp;lt;/youtube&amp;gt;&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2458</id>
		<title>FamilySearch Wiki:Extension tests</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2458"/>
		<updated>2023-08-13T23:58:26Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: /* DismissableSiteNotice */ update test&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following are tests of the extensions running on the wiki. Where applicable, if the &amp;quot;Test&amp;quot; value matches the &amp;quot;Expected&amp;quot; value, the extension can be assumed to be working.&lt;br /&gt;
[[Category:Tests]]&lt;br /&gt;
&lt;br /&gt;
== Admin Links ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:AdminLinks]]&lt;br /&gt;
&lt;br /&gt;
If you are an admin, you should see links by your personal tools.&lt;br /&gt;
&lt;br /&gt;
== AdvancedSearch ==&lt;br /&gt;
If [[#CirrusSearch]] is enabled, the extension produces the &amp;quot;Advanced Search&amp;quot; form on Special:Search. &lt;br /&gt;
&lt;br /&gt;
== Approved Revs==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ApprovedRevs]] &lt;br /&gt;
&lt;br /&gt;
== Arrays ==&lt;br /&gt;
{{#arraydefine:b|orange,red ,yellow, yellow}}&lt;br /&gt;
; Test&lt;br /&gt;
: {{#arrayprint:b}}&lt;br /&gt;
; Expected&lt;br /&gt;
: orange, red, yellow, yellow&lt;br /&gt;
&lt;br /&gt;
== BatchUserRights ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BatchUserRights]]&lt;br /&gt;
&lt;br /&gt;
== Bootstrap ==&lt;br /&gt;
:This test should be done while using the Chameleon skin; [{{fullurl:{{FULLPAGENAME}}|useskin=chameleon}} view page with useskin=chameleon]&lt;br /&gt;
This should be a greeny shadowed alert box with white text:&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-success shadow text-white font-weight-bold&amp;quot;&amp;gt;&lt;br /&gt;
I am bootstrapped&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== BootstrapComponents ==&lt;br /&gt;
Should be an accordion below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;bootstrap_accordion&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel1&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel2&amp;quot; color=&amp;quot;danger&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel3&amp;quot; active&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel4&amp;quot; color=&amp;quot;info&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
&amp;lt;/bootstrap_accordion&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Cargo ==&lt;br /&gt;
The [[Special:CargoTables]] should exist&lt;br /&gt;
&lt;br /&gt;
== CategoryTree ==&lt;br /&gt;
A category tree should be shown:&lt;br /&gt;
&amp;lt;categorytree mode=pages&amp;gt;Tests&amp;lt;/categorytree&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CharInsert ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;charinsert&amp;gt;Á&amp;lt;/charinsert&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt; [{{fullurl:{{FULLPAGENAME}}}}# Á]&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CirrusSearch ==&lt;br /&gt;
;For semantic wikis&lt;br /&gt;
The search results should display &amp;quot;'''ask'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+%23ask%3A&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
;For Cite enabled wikis&lt;br /&gt;
The search results should display &amp;quot;'''ref'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+ref&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
== Cite ==&lt;br /&gt;
; Test&lt;br /&gt;
: Text&amp;lt;ref&amp;gt;Test&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: Text&amp;lt;sup id=&amp;quot;cite_ref-1&amp;quot; class=&amp;quot;reference plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_note-1}} [1]]&amp;lt;/sup&amp;gt;&lt;br /&gt;
&amp;lt;ol class=&amp;quot;references&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li id=&amp;quot;cite_note-1&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;mw-cite-backlink plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_ref-1}} &amp;lt;span class=&amp;quot;cite-accessibility-label&amp;quot;&amp;gt;Jump up &amp;lt;/span&amp;gt;↑]&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;reference-text&amp;quot;&amp;gt;Test&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CiteThisPage ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:CiteThisPage]]&lt;br /&gt;
&lt;br /&gt;
== CodeEditor ==&lt;br /&gt;
This should open in the ACE editor interface:&lt;br /&gt;
[{{fullurl: Mediawiki:Common.css|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== CodeMirror ==&lt;br /&gt;
* The &amp;quot;Editing&amp;quot; tab on [[Special:Preferences]] should have the &amp;quot;Enable colorblind-friendly mode&amp;quot; checkbox (&amp;quot;Accessibility&amp;quot; section). &lt;br /&gt;
&lt;br /&gt;
== ContributionScores ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ContributionScores]]&lt;br /&gt;
&lt;br /&gt;
== Data Transfer ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ImportCSV]]&lt;br /&gt;
&lt;br /&gt;
== Description2 ==&lt;br /&gt;
This should produce &amp;quot;Description2 works!&amp;quot; in the description meta tag of this page head.&lt;br /&gt;
{{#description2:Description2 works!}}&lt;br /&gt;
&lt;br /&gt;
== DismissableSiteNotice ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.dismissableSiteNotice&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.dismissableSiteNotice');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== DisplayTitle==&lt;br /&gt;
;Expected: &lt;br /&gt;
{{FULLPAGENAME}}&lt;br /&gt;
;Result:&lt;br /&gt;
{{#getdisplaytitle:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Echo ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Notifications]]&lt;br /&gt;
&lt;br /&gt;
== Elastica ==&lt;br /&gt;
Usually, it is a dependency of CirrusSearch. If CirrusSearch test is passed, Elastica works. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== EmailFile ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailFile]]&lt;br /&gt;
&lt;br /&gt;
== EmailRegisteredUsers ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailRegisteredUsers]]&lt;br /&gt;
&lt;br /&gt;
== External Data ==&lt;br /&gt;
{{#get_web_data:url=https://www.semantic-mediawiki.org/wiki/Special:Ask/-5B-5BGermany-5D-5D/-3FLocated_in/format%3Dcsv/sep%3D,&lt;br /&gt;
    |format=csv with header|data=Located in=Located in}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#external_value:Located in}}&lt;br /&gt;
;Expected :Europe&lt;br /&gt;
&lt;br /&gt;
== FixedHeaderTable ==&lt;br /&gt;
Header of table below should be fixed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;fixedheadertable fixedcolumns=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header 1&lt;br /&gt;
! Header 2 &lt;br /&gt;
|- &lt;br /&gt;
| Cell 1&lt;br /&gt;
| Cell 2&lt;br /&gt;
|- &lt;br /&gt;
| Cell 3&lt;br /&gt;
| Cell 4&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/fixedheadertable&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FsLookAndFeel ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.fslookandfeel.scripts&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.fslookandfeel.scripts');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== FsSignin ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Gadgets ==&lt;br /&gt;
* [{{fullurl: Special:AllPages|from=&amp;amp;to=&amp;amp;namespace=2300}} This link] must '''not contain''' the error message &amp;quot;&amp;lt;code&amp;gt;{{SITENAME}} does not have namespace &amp;quot;2300&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
* {{#ifeq: {{NAMESPACENUMBER:Gadget:Something}}|2300|You have gadgets!|No gadgets or something went unusual...}}&lt;br /&gt;
&lt;br /&gt;
== GlobalNotice ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== GoogleTranslator ==&lt;br /&gt;
The sidebar should include an option to translate the page into different languages.&lt;br /&gt;
&lt;br /&gt;
== Header Tabs ==&lt;br /&gt;
Two tabs should be visible below.&lt;br /&gt;
= Test =&lt;br /&gt;
Content&lt;br /&gt;
= Test2 =&lt;br /&gt;
More content&lt;br /&gt;
&amp;lt;headertabs /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== HeaderFooter ==&lt;br /&gt;
The content of [[MediaWiki:hf-footer-{{FULLPAGENAME}}]] must be shown as a footer on the current page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[MediaWiki:hf-footer-{{FULLPAGENAME}}]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;card bg-dark text-white&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;card-body font-weight-bold text-center&amp;quot;&amp;gt;I am Footer&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ImageMap ==&lt;br /&gt;
&amp;lt;imagemap&amp;gt;&lt;br /&gt;
Image:JoshuaReynoldsParty.jpg|thumb|center|400px|alt=Dining room with nine men seated around a table. The dinner has been finished, and a large man at the head talks and gesticulates while the others eagerly listen. The men wear wigs and clothing of late 18th century Britain, and the furniture, hangings, and chandelier are of similar vintage. A liveried servant is entering with a tray bearing two high-shouldered decanters of wine.|Image map example. Clicking on a person in the picture causes the browser to load the appropriate article.&lt;br /&gt;
&lt;br /&gt;
poly 133 343 124 287 159 224 189 228 195 291 222 311 209 343 209 354 243 362 292 466 250 463 [[wikipedia:Samuel Johnson|Dr Johnson - Dictionary writer]]&lt;br /&gt;
poly 76 224 84 255 43 302 62 400 123 423 121 361 137 344 122 290 111 234 96 225 [[wikipedia:James Boswell|Boswell - Biographer]]&lt;br /&gt;
poly 190 276 208 240 229 228 247 238 250 258 286 319 282 323 223 323 220 301 200 295 [[wikipedia:Joshua Reynolds|Sir Joshua Reynolds - Host]]&lt;br /&gt;
poly 308 317 311 270 328 261 316 246 320 228 343 227 357 240 377 274 366 284 352 311 319 324 [[wikipedia:David Garrick|David Garrick - actor]]&lt;br /&gt;
poly 252 406 313 343 341 343 366 280 383 273 372 251 378 222 409 228 414 280 420 292 390 300 374 360 359 437 306 418 313 391 272 415 [[wikipedia:Edmund Burke|Edmund Burke - statesman]]&lt;br /&gt;
rect 418 220 452 287 [[wikipedia:Pasquale Paoli|Pasqual Paoli - Corsican patriot]]&lt;br /&gt;
poly 455 238 484 253 505 303 495 363 501 377 491 443 429 439 423 375 466 352 [[wikipedia:Charles Burney|Charles Burney - music historian]]&lt;br /&gt;
poly 501 279 546 237 567 239 572 308 560 326 537 316 530 300 502 289 [[wikipedia:Thomas Warton|Thomas Warton - poet laureate]]&lt;br /&gt;
poly 572 453 591 446 572 373 603 351 562 325 592 288 573 260 573 248 591 243 615 254 637 280 655 334 705 396 656 419 625 382 609 391 613 453 [[wikipedia:Oliver Goldsmith|Oliver Goldsmith - writer]]&lt;br /&gt;
rect 450 86 584 188 [[wikipedia:Joshua Reynolds|prob.The Infant Academy 1782]]&lt;br /&gt;
rect 286 87 376 191 [[wikipedia:Joshua Reynolds|unknown painting]]&lt;br /&gt;
circle 100 141 20 [[wikipedia:Joshua Reynolds|An unknown portrait]]&lt;br /&gt;
poly 503 192 511 176 532 176 534 200 553 219 554 234 541 236 525 261 506 261 511 220 515 215 [[wikipedia:Francis Barber|servant - poss. Francis Barber]]&lt;br /&gt;
rect 12 10 702 500 [[wikipedia:The Club (Literary Club)|Use button to enlarge or use hyperlinks]]&lt;br /&gt;
&amp;lt;/imagemap&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== InputBox ==&lt;br /&gt;
; Test&lt;br /&gt;
&amp;lt;inputbox&amp;gt;&lt;br /&gt;
type=create&lt;br /&gt;
break=no&lt;br /&gt;
&amp;lt;/inputbox&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: An input box&lt;br /&gt;
&lt;br /&gt;
== Interwiki ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Interwiki]]&lt;br /&gt;
&lt;br /&gt;
== LabeledSectionTransclusion ==&lt;br /&gt;
;Test&amp;amp;#160;:{{#lst:{{FULLPAGENAME}}/Labeled Section Transclusion|test1}}&lt;br /&gt;
;Expected :This is a test.&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' In this case, the &amp;quot;Section by heading&amp;quot; must be a section in the page that is to be transcluded.&lt;br /&gt;
;Test&amp;amp;#160;:{{#lsth:{{FULLPAGENAME}}/Labeled Section Transclusion|Section by heading}}&lt;br /&gt;
;Expected :This is a section with a heading&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[{{FULLPAGENAME}}/Labeled Section Transclusion]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;section begin=test1 /&amp;gt;This is a test.&amp;lt;section end=test1 /&amp;gt;&lt;br /&gt;
Some text ...&lt;br /&gt;
&lt;br /&gt;
=== Section by heading ===&lt;br /&gt;
This is a section with a heading&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Lingo ==&lt;br /&gt;
Lingo is a glossary extension. It lets you define a list of abbreviations and their definitions on [[{{MediaWiki:Lingo-terminologypagename}}]] page and then displays these definitions whenever an abbreviation is hovered over in an article. &lt;br /&gt;
&lt;br /&gt;
Check it below:&lt;br /&gt;
&lt;br /&gt;
USA &amp;lt;- is abbreviations&lt;br /&gt;
&lt;br /&gt;
== LocalisationUpdate ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Lockdown ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Loops ==&lt;br /&gt;
; Note: this extension requires that the Variables extension also be installed&lt;br /&gt;
;Test&amp;amp;#160;: {{#vardefine: i | 1 }}{{#while:&lt;br /&gt;
 | {{#ifexpr: {{#var: i }} &amp;lt; 4 | true }}&lt;br /&gt;
 | &lt;br /&gt;
{{#var: i }} {{#vardefine: i | {{#expr: {{#var: i }} + 1 }} }}&lt;br /&gt;
}}&lt;br /&gt;
;Expected&amp;amp;#160;: 1  2  3&lt;br /&gt;
&lt;br /&gt;
== MagicNoCache ==&lt;br /&gt;
The table cell should be empty:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|__NOCACHE__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Maps ==&lt;br /&gt;
;Variant 1&lt;br /&gt;
{{#display_map:address=Brandenburg Gate, Berlin, Germany|width=200|height=150|zoom=17|type=hybrid}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate, Berlin, Germany}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
;Variant 2&lt;br /&gt;
{{#display_map: Brandenburg Gate, Berlin~Brandenburg Gate }}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
== MasonryMainPage ==&lt;br /&gt;
&amp;lt;div id=&amp;quot;mediawiki-masonry-main-page-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== MobileFrontend ==&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_mobile}} This link] should open '''mobile''' version&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_desktop}} This link] should open '''desktop''' version&lt;br /&gt;
&lt;br /&gt;
== MultimediaViewer ==&lt;br /&gt;
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 &amp;lt;code&amp;gt;Open in Media Viewer&amp;lt;/code&amp;gt; button:&lt;br /&gt;
:[[File:JoshuaReynoldsParty.jpg|50px]]&lt;br /&gt;
&lt;br /&gt;
== MyVariables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{CURRENTUSER}} &lt;br /&gt;
; Expected&amp;amp;#160;: Your user name or the IP for anonymous users&lt;br /&gt;
&lt;br /&gt;
== Nuke ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Nuke]]&lt;br /&gt;
&lt;br /&gt;
== OpenGraphMeta ==&lt;br /&gt;
;Test&lt;br /&gt;
[[File:{{#setmainimage:JoshuaReynoldsParty.jpg}}|100px]]&lt;br /&gt;
;Expected:&lt;br /&gt;
[[File:JoshuaReynoldsParty.jpg|100px]]&lt;br /&gt;
&lt;br /&gt;
== OpenID Connect ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PDF Handler ==&lt;br /&gt;
You should see the content of the uploaded PDF ([[media:Imported_vocabulary.pdf|Imported_vocabulary.pdf]]):&lt;br /&gt;
&lt;br /&gt;
[[File:Imported_vocabulary.pdf|page=1|200px|Succeeded]]&lt;br /&gt;
&lt;br /&gt;
== Page Importer ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PageForms ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Forms]]&lt;br /&gt;
&lt;br /&gt;
== PageImages ==&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=pageimages&amp;amp;titles={{PAGENAMEE}} This must not fire a warning about pageimages]&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=help&amp;amp;modules=query This should list '''pageimages''' property]&lt;br /&gt;
&lt;br /&gt;
== Parser Function Helper ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== ParserFunctions ==&lt;br /&gt;
; Test math functions: {{#expr: 4 + 6}}&lt;br /&gt;
; Expected&amp;amp;#160;: 10&lt;br /&gt;
&lt;br /&gt;
; Test string functions: {{#ifeq:{{#expr: 4 + 6}}|10|{{#ifeq:{{#len:Icecream }}|8|{{#len:Icecream }}|disabled}}}}&lt;br /&gt;
; Expected&amp;amp;#160;: {{#ifeq:{{#len:Icecream }}|8|8|disabled}}&lt;br /&gt;
&lt;br /&gt;
== ParserHooks ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Parsoid ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PluggableAuth ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Poem ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;poem&amp;gt;&lt;br /&gt;
Une terre au flanc maigre, âpre, avare, inclément&lt;br /&gt;
Où les vivants pensifs travaillent tristement, &lt;br /&gt;
::Et qui donne à regret à cette race humaine&lt;br /&gt;
Un peu de pain pour tant de labeur et de peine&amp;amp;#160;; &lt;br /&gt;
::Des hommes durs, éclos sur ces sillons ingrats&amp;amp;#160;; &lt;br /&gt;
Des cités d’où s’en vont, en se tordant les bras, &lt;br /&gt;
::La charité, la paix, la foi, sœurs vénérables&amp;amp;#160;; &lt;br /&gt;
L’orgueil chez les puissants et chez les misérables&amp;amp;#160;; &lt;br /&gt;
&amp;lt;/poem&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: A nicely formatted poem&lt;br /&gt;
&lt;br /&gt;
== Renameuser ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RenameUser]]&lt;br /&gt;
&lt;br /&gt;
== Replace Text ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ReplaceText]]&lt;br /&gt;
&lt;br /&gt;
== RevisionSlider ==&lt;br /&gt;
Check '''Browse history Interactively''' slider interface at the top of ''Difference between revisions'' page ([{{fullurl:{{FULLPAGENAME}}|action=history}} history])&lt;br /&gt;
&lt;br /&gt;
== RottenLinks ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RottenLinks]]&lt;br /&gt;
&lt;br /&gt;
== SandboxLink ==&lt;br /&gt;
'''Sandbox''' link should be added on user's personal tools menu (at the top)&lt;br /&gt;
&lt;br /&gt;
== Scribunto ==&lt;br /&gt;
=== [[Module:String]] ===&lt;br /&gt;
; Test&amp;amp;#160;: {{#invoke:String|len|This is a test.}} &lt;br /&gt;
; Expected&amp;amp;#160;: 15&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:String]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
local p = {}&lt;br /&gt;
function p.len(frame)&lt;br /&gt;
	local s = frame.args[1]&lt;br /&gt;
	return mw.ustring.len( s )&lt;br /&gt;
end&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Semantic Drilldown ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BrowseData]]&lt;br /&gt;
&lt;br /&gt;
== Semantic Internal Objects ==&lt;br /&gt;
{{#set_internal:Part of recipe&lt;br /&gt;
|Has quantity=1&lt;br /&gt;
|Has unit=cup&lt;br /&gt;
|Has ingredient=flour&lt;br /&gt;
}}&lt;br /&gt;
* Expected: 1&lt;br /&gt;
* Actual: {{#ask:[[Part of recipe::+]][[Has ingredient::flour]][[Has unit::cup]][[Has quantity::&amp;gt;.5]]&lt;br /&gt;
|mainlabel=-&lt;br /&gt;
|? Has quantity=&lt;br /&gt;
|link=none&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Semantic Meeting Minutes ==&lt;br /&gt;
[[Special:FormEdit/Meeting Minutes]] must be a valid form.&lt;br /&gt;
&lt;br /&gt;
== SemanticCompoundQueries ==&lt;br /&gt;
This should produce no error:&lt;br /&gt;
{{#compound_query: [[:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |[[File:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |link=none&lt;br /&gt;
 |format=ul&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== SemanticMediaWiki ==&lt;br /&gt;
; Test&amp;amp;#160;:[[Test::NONEXISTENTPAGE|Test]] __SHOWFACTBOX__&lt;br /&gt;
; Expected&amp;amp;#160;:[[NONEXISTENTPAGE|Test]]&lt;br /&gt;
: There should be a factbox at the page bottom.&lt;br /&gt;
&lt;br /&gt;
== SemanticResultFormats ==&lt;br /&gt;
; Test (old wikis)&lt;br /&gt;
{{#ask:[[{{FULLPAGENAME}}]]|?Test|format=datatables}}&lt;br /&gt;
; Expected&lt;br /&gt;
: A nice-looking DataTable with a search field&lt;br /&gt;
&lt;br /&gt;
== SemanticScribunto ==&lt;br /&gt;
&lt;br /&gt;
Should be an icon with information popup -&amp;gt; {{#invoke:SemanticScribuntoTest|info|some text}}&lt;br /&gt;
&lt;br /&gt;
{{#invoke:SemanticScribuntoTest|inlineInfo}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:SemanticScribuntoTest]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-- Module:SMW&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
-- set with direct return results&lt;br /&gt;
function p.info( frame )&lt;br /&gt;
&lt;br /&gt;
    if not mw.smw then&lt;br /&gt;
        return &amp;quot;mw.smw module not found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if frame.args[1] == nil then&lt;br /&gt;
        return &amp;quot;no parameter found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    local tooltip&lt;br /&gt;
    if frame.args[2] then&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1], frame.args[2] )&lt;br /&gt;
    else&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1] )&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    return tooltip&lt;br /&gt;
end&lt;br /&gt;
-- another example, info used inside another function&lt;br /&gt;
function p.inlineInfo( frame )&lt;br /&gt;
&lt;br /&gt;
    local output = 'This is sample output'&lt;br /&gt;
&lt;br /&gt;
    -- so some stuff&lt;br /&gt;
&lt;br /&gt;
    output = output .. mw.smw.info( 'This is a warning', 'warning' )&lt;br /&gt;
&lt;br /&gt;
    -- some more stuff&lt;br /&gt;
&lt;br /&gt;
    return output&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SimpleMathJax ==&lt;br /&gt;
; Note: this extension does not work with the Math extension installed&lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;math&amp;gt;\int_{(x,y)\in C} x^3\, dx + 4y^2\, dy&amp;lt;/math&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: ∫(x,y)∈Cx3dx+4y2dy (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
And if &amp;lt;code&amp;gt;SMJ&amp;lt;/code&amp;gt; added as &amp;lt;code&amp;gt;$wgSmjExtraInlineMath = [ [ 'SMJ(', ')SMJ' ] ];&amp;lt;/code&amp;gt; in LocalSettings.php file: &lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: SMJ(E=mc^2)SMJ&lt;br /&gt;
; Expected&lt;br /&gt;
: E=mc^2 (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
== SpamBlacklist ==&lt;br /&gt;
This should display the spam blacklist log: [{{fullurl:Special:Log|type=spamblacklist}} spamblacklist].&lt;br /&gt;
&lt;br /&gt;
== SubPageList ==&lt;br /&gt;
;Result&lt;br /&gt;
{{#subpagecount: }}&lt;br /&gt;
;Expected&lt;br /&gt;
0&lt;br /&gt;
&lt;br /&gt;
== SyntaxHighlight ==&lt;br /&gt;
; Note: this extension make also be referred to as &amp;quot;SyntaxHighlight GeSHi&amp;quot;&lt;br /&gt;
The following must be colorful:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line start=3 highlight=&amp;quot;1,5-7&amp;quot;&amp;gt;&lt;br /&gt;
def quick_sort(arr):&lt;br /&gt;
	less = []&lt;br /&gt;
	pivot_list = []&lt;br /&gt;
	more = []&lt;br /&gt;
	if len(arr) &amp;lt;= 1:&lt;br /&gt;
		return arr&lt;br /&gt;
	else:&lt;br /&gt;
		pass&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TemplateData ==&lt;br /&gt;
[{{fullurl:Template:Test|action=edit}} This link should take you to a page with the &amp;lt;code&amp;gt;Manage TemplateData&amp;lt;/code&amp;gt; button] (normally below the first heading).&lt;br /&gt;
&lt;br /&gt;
== TextExtracts ==&lt;br /&gt;
The output should not contain &amp;lt;code&amp;gt;Unrecognized parameter: exchars&amp;lt;/code&amp;gt; error:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=extracts&amp;amp;exchars=175&amp;amp;format=json&amp;amp;titles={{FULLPAGENAMEE}} Extract]&lt;br /&gt;
&lt;br /&gt;
== Thanks ==&lt;br /&gt;
[[Special:Log/thanks]] exists.&lt;br /&gt;
&lt;br /&gt;
== TitleBlacklist ==&lt;br /&gt;
;The text should follow:&lt;br /&gt;
{{int: Titleblacklist}}&lt;br /&gt;
&lt;br /&gt;
== TwitterCards ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== UniversalLanguageSelector ==&lt;br /&gt;
No test was invented. The language selector should appear somewhere and the extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Upload Wizard ==&lt;br /&gt;
UploadWizard is displayed at [[:Special:UploadWizard]]&lt;br /&gt;
&lt;br /&gt;
== UserFunctions ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#ifanon:It works|It works}}&lt;br /&gt;
; Expected&amp;amp;#160;: It works&lt;br /&gt;
&lt;br /&gt;
== VEForAll ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Validator ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Variables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#vardefine:test|testing}}{{#var:test}}&lt;br /&gt;
; Expected&amp;amp;#160;: testing&lt;br /&gt;
&lt;br /&gt;
== VisualEditor ==&lt;br /&gt;
This should load VisualEditor in edit mode:&lt;br /&gt;
[{{fullurl:Main Page|veaction=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WhoIsWatching ==&lt;br /&gt;
Should show the number of watching users below:&lt;br /&gt;
&lt;br /&gt;
{{#whoiswatching:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Widgets ==&lt;br /&gt;
;Test&lt;br /&gt;
:{{ns:Widget}}&lt;br /&gt;
;Expected&lt;br /&gt;
:Widget&lt;br /&gt;
&lt;br /&gt;
== WikiEditor ==&lt;br /&gt;
This should load a tabbed WikiEditor:&lt;br /&gt;
[{{fullurl:Main Page|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WikiSEO ==&lt;br /&gt;
{{#seo:&lt;br /&gt;
|title=Your page title&lt;br /&gt;
|titlemode=append&lt;br /&gt;
|keywords=these,are,your,keywords&lt;br /&gt;
|description=Your meta description&lt;br /&gt;
}}&lt;br /&gt;
The page source should contain:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;&amp;lt;/nowiki&amp;gt;Your page title&amp;lt;nowiki&amp;gt;&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;keywords&amp;quot; content=&amp;quot;these,are,your,keywords&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;description&amp;quot; content=&amp;quot;Your meta description&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Wiretap ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Wiretap]]&lt;br /&gt;
&lt;br /&gt;
== YouTube ==&lt;br /&gt;
&amp;lt;youtube&amp;gt;VyBSS48E4xI&amp;lt;/youtube&amp;gt;&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=Terminologia&amp;diff=2457</id>
		<title>Terminologia</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=Terminologia&amp;diff=2457"/>
		<updated>2023-08-09T05:44:59Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: create for testing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;USA&lt;br /&gt;
:United States of America&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=Categoria:Tests&amp;diff=2456</id>
		<title>Categoria:Tests</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=Categoria:Tests&amp;diff=2456"/>
		<updated>2023-08-09T05:42:37Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: create for testing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=Modulo:SemanticScribuntoTest&amp;diff=2455</id>
		<title>Modulo:SemanticScribuntoTest</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=Modulo:SemanticScribuntoTest&amp;diff=2455"/>
		<updated>2023-08-09T05:42:14Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: create for testing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;-- Module:SMW&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
-- set with direct return results&lt;br /&gt;
function p.info( frame )&lt;br /&gt;
&lt;br /&gt;
    if not mw.smw then&lt;br /&gt;
        return &amp;quot;mw.smw module not found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if frame.args[1] == nil then&lt;br /&gt;
        return &amp;quot;no parameter found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    local tooltip&lt;br /&gt;
    if frame.args[2] then&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1], frame.args[2] )&lt;br /&gt;
    else&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1] )&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    return tooltip&lt;br /&gt;
end&lt;br /&gt;
-- another example, info used inside another function&lt;br /&gt;
function p.inlineInfo( frame )&lt;br /&gt;
&lt;br /&gt;
    local output = 'This is sample output'&lt;br /&gt;
&lt;br /&gt;
    -- so some stuff&lt;br /&gt;
&lt;br /&gt;
    output = output .. mw.smw.info( 'This is a warning', 'warning' )&lt;br /&gt;
&lt;br /&gt;
    -- some more stuff&lt;br /&gt;
&lt;br /&gt;
    return output&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=Modulo:String&amp;diff=2454</id>
		<title>Modulo:String</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=Modulo:String&amp;diff=2454"/>
		<updated>2023-08-09T05:41:58Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: create for testing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;local p = {}&lt;br /&gt;
function p.len(frame)&lt;br /&gt;
	local s = frame.args[1]&lt;br /&gt;
	return mw.ustring.len( s )&lt;br /&gt;
end&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=File:JoshuaReynoldsParty.jpg&amp;diff=2453</id>
		<title>File:JoshuaReynoldsParty.jpg</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=File:JoshuaReynoldsParty.jpg&amp;diff=2453"/>
		<updated>2023-08-09T05:41:28Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: :commons:File:JoshuaReynoldsParty.jpg&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Dettagli ==&lt;br /&gt;
[[:commons:File:JoshuaReynoldsParty.jpg]]&lt;br /&gt;
== Licenza ==&lt;br /&gt;
{{PD-old-100-italiano}}&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests/Labeled_Section_Transclusion&amp;diff=2452</id>
		<title>FamilySearch Wiki:Extension tests/Labeled Section Transclusion</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests/Labeled_Section_Transclusion&amp;diff=2452"/>
		<updated>2023-08-09T05:40:37Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: create for testing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;section begin=test1 /&amp;gt;This is a test.&amp;lt;section end=test1 /&amp;gt;&lt;br /&gt;
Some text ...&lt;br /&gt;
&lt;br /&gt;
=== Section by heading ===&lt;br /&gt;
This is a section with a heading&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=MediaWiki:Hf-footer-FamilySearch_Wiki:Extension_tests&amp;diff=2451</id>
		<title>MediaWiki:Hf-footer-FamilySearch Wiki:Extension tests</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=MediaWiki:Hf-footer-FamilySearch_Wiki:Extension_tests&amp;diff=2451"/>
		<updated>2023-08-09T05:40:17Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: create for testing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div class=&amp;quot;card bg-dark text-white&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;card-body font-weight-bold text-center&amp;quot;&amp;gt;I am Footer&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2450</id>
		<title>FamilySearch Wiki:Extension tests</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=FamilySearch_Wiki:Extension_tests&amp;diff=2450"/>
		<updated>2023-08-09T05:39:43Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: create initial tests&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following are tests of the extensions running on the wiki. Where applicable, if the &amp;quot;Test&amp;quot; value matches the &amp;quot;Expected&amp;quot; value, the extension can be assumed to be working.&lt;br /&gt;
[[Category:Tests]]&lt;br /&gt;
&lt;br /&gt;
== Admin Links ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:AdminLinks]]&lt;br /&gt;
&lt;br /&gt;
If you are an admin, you should see links by your personal tools.&lt;br /&gt;
&lt;br /&gt;
== AdvancedSearch ==&lt;br /&gt;
If [[#CirrusSearch]] is enabled, the extension produces the &amp;quot;Advanced Search&amp;quot; form on Special:Search. &lt;br /&gt;
&lt;br /&gt;
== Approved Revs==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ApprovedRevs]] &lt;br /&gt;
&lt;br /&gt;
== Arrays ==&lt;br /&gt;
{{#arraydefine:b|orange,red ,yellow, yellow}}&lt;br /&gt;
; Test&lt;br /&gt;
: {{#arrayprint:b}}&lt;br /&gt;
; Expected&lt;br /&gt;
: orange, red, yellow, yellow&lt;br /&gt;
&lt;br /&gt;
== BatchUserRights ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BatchUserRights]]&lt;br /&gt;
&lt;br /&gt;
== Bootstrap ==&lt;br /&gt;
:This test should be done while using the Chameleon skin; [{{fullurl:{{FULLPAGENAME}}|useskin=chameleon}} view page with useskin=chameleon]&lt;br /&gt;
This should be a greeny shadowed alert box with white text:&lt;br /&gt;
&amp;lt;div class=&amp;quot;alert alert-success shadow text-white font-weight-bold&amp;quot;&amp;gt;&lt;br /&gt;
I am bootstrapped&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== BootstrapComponents ==&lt;br /&gt;
Should be an accordion below:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;bootstrap_accordion&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel1&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel2&amp;quot; color=&amp;quot;danger&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel3&amp;quot; active&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
	&amp;lt;bootstrap_panel heading=&amp;quot;Headline for Panel4&amp;quot; color=&amp;quot;info&amp;quot;&amp;gt;Text inside the panel&amp;lt;/bootstrap_panel&amp;gt;&lt;br /&gt;
&amp;lt;/bootstrap_accordion&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Cargo ==&lt;br /&gt;
The [[Special:CargoTables]] should exist&lt;br /&gt;
&lt;br /&gt;
== CategoryTree ==&lt;br /&gt;
A category tree should be shown:&lt;br /&gt;
&amp;lt;categorytree mode=pages&amp;gt;Tests&amp;lt;/categorytree&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CharInsert ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;charinsert&amp;gt;Á&amp;lt;/charinsert&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: &amp;lt;span class=&amp;quot;plainlinks&amp;quot;&amp;gt; [{{fullurl:{{FULLPAGENAME}}}}# Á]&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CirrusSearch ==&lt;br /&gt;
;For semantic wikis&lt;br /&gt;
The search results should display &amp;quot;'''ask'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+%23ask%3A&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
;For Cite enabled wikis&lt;br /&gt;
The search results should display &amp;quot;'''ref'''&amp;quot; in bold:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/index.php?search=insource%3A+ref&amp;amp;title=Special%3ASearch&amp;amp;profile=all&amp;amp;fulltext=1 Search in the source]&lt;br /&gt;
&lt;br /&gt;
== Cite ==&lt;br /&gt;
; Test&lt;br /&gt;
: Text&amp;lt;ref&amp;gt;Test&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: Text&amp;lt;sup id=&amp;quot;cite_ref-1&amp;quot; class=&amp;quot;reference plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_note-1}} [1]]&amp;lt;/sup&amp;gt;&lt;br /&gt;
&amp;lt;ol class=&amp;quot;references&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li id=&amp;quot;cite_note-1&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;mw-cite-backlink plainlinks&amp;quot;&amp;gt;[{{fullurl:{{FULLPAGENAME}}#cite_ref-1}} &amp;lt;span class=&amp;quot;cite-accessibility-label&amp;quot;&amp;gt;Jump up &amp;lt;/span&amp;gt;↑]&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;reference-text&amp;quot;&amp;gt;Test&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== CiteThisPage ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:CiteThisPage]]&lt;br /&gt;
&lt;br /&gt;
== CodeEditor ==&lt;br /&gt;
This should open in the ACE editor interface:&lt;br /&gt;
[{{fullurl: Mediawiki:Common.css|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== CodeMirror ==&lt;br /&gt;
* The &amp;quot;Editing&amp;quot; tab on [[Special:Preferences]] should have the &amp;quot;Enable colorblind-friendly mode&amp;quot; checkbox (&amp;quot;Accessibility&amp;quot; section). &lt;br /&gt;
&lt;br /&gt;
== ContributionScores ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ContributionScores]]&lt;br /&gt;
&lt;br /&gt;
== Data Transfer ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ImportCSV]]&lt;br /&gt;
&lt;br /&gt;
== Description2 ==&lt;br /&gt;
This should produce &amp;quot;Description2 works!&amp;quot; in the description meta tag of this page head.&lt;br /&gt;
{{#description2:Description2 works!}}&lt;br /&gt;
&lt;br /&gt;
== DismissableSiteNotice ==&lt;br /&gt;
This should have a number:&lt;br /&gt;
* [[MediaWiki:Sitenotice_id]]&lt;br /&gt;
&lt;br /&gt;
== DisplayTitle==&lt;br /&gt;
;Expected: &lt;br /&gt;
{{FULLPAGENAME}}&lt;br /&gt;
;Result:&lt;br /&gt;
{{#getdisplaytitle:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Echo ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Notifications]]&lt;br /&gt;
&lt;br /&gt;
== Elastica ==&lt;br /&gt;
Usually, it is a dependency of CirrusSearch. If CirrusSearch test is passed, Elastica works. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== EmailFile ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailFile]]&lt;br /&gt;
&lt;br /&gt;
== EmailRegisteredUsers ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:EmailRegisteredUsers]]&lt;br /&gt;
&lt;br /&gt;
== External Data ==&lt;br /&gt;
{{#get_web_data:url=https://www.semantic-mediawiki.org/wiki/Special:Ask/-5B-5BGermany-5D-5D/-3FLocated_in/format%3Dcsv/sep%3D,&lt;br /&gt;
    |format=csv with header|data=Located in=Located in}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#external_value:Located in}}&lt;br /&gt;
;Expected :Europe&lt;br /&gt;
&lt;br /&gt;
== FixedHeaderTable ==&lt;br /&gt;
Header of table below should be fixed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;fixedheadertable fixedcolumns=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header 1&lt;br /&gt;
! Header 2 &lt;br /&gt;
|- &lt;br /&gt;
| Cell 1&lt;br /&gt;
| Cell 2&lt;br /&gt;
|- &lt;br /&gt;
| Cell 3&lt;br /&gt;
| Cell 4&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/fixedheadertable&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FsLookAndFeel ==&lt;br /&gt;
The &amp;lt;code&amp;gt;ext.fslookandfeel.scripts&amp;lt;/code&amp;gt; ResourceLoader module should be registered; in the developer console running &amp;lt;code&amp;gt;mw.loader.getState('ext.fslookandfeel.scripts');&amp;lt;/code&amp;gt; should return a string (rather than &amp;lt;code&amp;gt;null&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
== FsSignin ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Gadgets ==&lt;br /&gt;
* [{{fullurl: Special:AllPages|from=&amp;amp;to=&amp;amp;namespace=2300}} This link] must '''not contain''' the error message &amp;quot;&amp;lt;code&amp;gt;{{SITENAME}} does not have namespace &amp;quot;2300&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
* {{#ifeq: {{NAMESPACENUMBER:Gadget:Something}}|2300|You have gadgets!|No gadgets or something went unusual...}}&lt;br /&gt;
&lt;br /&gt;
== GlobalNotice ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== GoogleTranslator ==&lt;br /&gt;
The sidebar should include an option to translate the page into different languages.&lt;br /&gt;
&lt;br /&gt;
== Header Tabs ==&lt;br /&gt;
Two tabs should be visible below.&lt;br /&gt;
= Test =&lt;br /&gt;
Content&lt;br /&gt;
= Test2 =&lt;br /&gt;
More content&lt;br /&gt;
&amp;lt;headertabs /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== HeaderFooter ==&lt;br /&gt;
The content of [[MediaWiki:hf-footer-{{FULLPAGENAME}}]] must be shown as a footer on the current page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[MediaWiki:hf-footer-{{FULLPAGENAME}}]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;card bg-dark text-white&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;card-body font-weight-bold text-center&amp;quot;&amp;gt;I am Footer&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ImageMap ==&lt;br /&gt;
&amp;lt;imagemap&amp;gt;&lt;br /&gt;
Image:JoshuaReynoldsParty.jpg|thumb|center|400px|alt=Dining room with nine men seated around a table. The dinner has been finished, and a large man at the head talks and gesticulates while the others eagerly listen. The men wear wigs and clothing of late 18th century Britain, and the furniture, hangings, and chandelier are of similar vintage. A liveried servant is entering with a tray bearing two high-shouldered decanters of wine.|Image map example. Clicking on a person in the picture causes the browser to load the appropriate article.&lt;br /&gt;
&lt;br /&gt;
poly 133 343 124 287 159 224 189 228 195 291 222 311 209 343 209 354 243 362 292 466 250 463 [[wikipedia:Samuel Johnson|Dr Johnson - Dictionary writer]]&lt;br /&gt;
poly 76 224 84 255 43 302 62 400 123 423 121 361 137 344 122 290 111 234 96 225 [[wikipedia:James Boswell|Boswell - Biographer]]&lt;br /&gt;
poly 190 276 208 240 229 228 247 238 250 258 286 319 282 323 223 323 220 301 200 295 [[wikipedia:Joshua Reynolds|Sir Joshua Reynolds - Host]]&lt;br /&gt;
poly 308 317 311 270 328 261 316 246 320 228 343 227 357 240 377 274 366 284 352 311 319 324 [[wikipedia:David Garrick|David Garrick - actor]]&lt;br /&gt;
poly 252 406 313 343 341 343 366 280 383 273 372 251 378 222 409 228 414 280 420 292 390 300 374 360 359 437 306 418 313 391 272 415 [[wikipedia:Edmund Burke|Edmund Burke - statesman]]&lt;br /&gt;
rect 418 220 452 287 [[wikipedia:Pasquale Paoli|Pasqual Paoli - Corsican patriot]]&lt;br /&gt;
poly 455 238 484 253 505 303 495 363 501 377 491 443 429 439 423 375 466 352 [[wikipedia:Charles Burney|Charles Burney - music historian]]&lt;br /&gt;
poly 501 279 546 237 567 239 572 308 560 326 537 316 530 300 502 289 [[wikipedia:Thomas Warton|Thomas Warton - poet laureate]]&lt;br /&gt;
poly 572 453 591 446 572 373 603 351 562 325 592 288 573 260 573 248 591 243 615 254 637 280 655 334 705 396 656 419 625 382 609 391 613 453 [[wikipedia:Oliver Goldsmith|Oliver Goldsmith - writer]]&lt;br /&gt;
rect 450 86 584 188 [[wikipedia:Joshua Reynolds|prob.The Infant Academy 1782]]&lt;br /&gt;
rect 286 87 376 191 [[wikipedia:Joshua Reynolds|unknown painting]]&lt;br /&gt;
circle 100 141 20 [[wikipedia:Joshua Reynolds|An unknown portrait]]&lt;br /&gt;
poly 503 192 511 176 532 176 534 200 553 219 554 234 541 236 525 261 506 261 511 220 515 215 [[wikipedia:Francis Barber|servant - poss. Francis Barber]]&lt;br /&gt;
rect 12 10 702 500 [[wikipedia:The Club (Literary Club)|Use button to enlarge or use hyperlinks]]&lt;br /&gt;
&amp;lt;/imagemap&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== InputBox ==&lt;br /&gt;
; Test&lt;br /&gt;
&amp;lt;inputbox&amp;gt;&lt;br /&gt;
type=create&lt;br /&gt;
break=no&lt;br /&gt;
&amp;lt;/inputbox&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: An input box&lt;br /&gt;
&lt;br /&gt;
== Interwiki ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Interwiki]]&lt;br /&gt;
&lt;br /&gt;
== LabeledSectionTransclusion ==&lt;br /&gt;
;Test&amp;amp;#160;:{{#lst:{{FULLPAGENAME}}/Labeled Section Transclusion|test1}}&lt;br /&gt;
;Expected :This is a test.&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' In this case, the &amp;quot;Section by heading&amp;quot; must be a section in the page that is to be transcluded.&lt;br /&gt;
;Test&amp;amp;#160;:{{#lsth:{{FULLPAGENAME}}/Labeled Section Transclusion|Section by heading}}&lt;br /&gt;
;Expected :This is a section with a heading&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[{{FULLPAGENAME}}/Labeled Section Transclusion]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;section begin=test1 /&amp;gt;This is a test.&amp;lt;section end=test1 /&amp;gt;&lt;br /&gt;
Some text ...&lt;br /&gt;
&lt;br /&gt;
=== Section by heading ===&lt;br /&gt;
This is a section with a heading&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Lingo ==&lt;br /&gt;
Lingo is a glossary extension. It lets you define a list of abbreviations and their definitions on [[{{MediaWiki:Lingo-terminologypagename}}]] page and then displays these definitions whenever an abbreviation is hovered over in an article. &lt;br /&gt;
&lt;br /&gt;
Check it below:&lt;br /&gt;
&lt;br /&gt;
USA &amp;lt;- is abbreviations&lt;br /&gt;
&lt;br /&gt;
== LocalisationUpdate ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Lockdown ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Loops ==&lt;br /&gt;
; Note: this extension requires that the Variables extension also be installed&lt;br /&gt;
;Test&amp;amp;#160;: {{#vardefine: i | 1 }}{{#while:&lt;br /&gt;
 | {{#ifexpr: {{#var: i }} &amp;lt; 4 | true }}&lt;br /&gt;
 | &lt;br /&gt;
{{#var: i }} {{#vardefine: i | {{#expr: {{#var: i }} + 1 }} }}&lt;br /&gt;
}}&lt;br /&gt;
;Expected&amp;amp;#160;: 1  2  3&lt;br /&gt;
&lt;br /&gt;
== MagicNoCache ==&lt;br /&gt;
The table cell should be empty:&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
|__NOCACHE__&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Maps ==&lt;br /&gt;
;Variant 1&lt;br /&gt;
{{#display_map:address=Brandenburg Gate, Berlin, Germany|width=200|height=150|zoom=17|type=hybrid}}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate, Berlin, Germany}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
;Variant 2&lt;br /&gt;
{{#display_map: Brandenburg Gate, Berlin~Brandenburg Gate }}&lt;br /&gt;
;Test&amp;amp;#160;:{{#geocode:Brandenburg Gate}}&lt;br /&gt;
;Expected :52° 30' 58.59&amp;quot; N, 13° 22' 39.73&amp;quot; E&lt;br /&gt;
&lt;br /&gt;
== MasonryMainPage ==&lt;br /&gt;
&amp;lt;div id=&amp;quot;mediawiki-masonry-main-page-container&amp;quot;&amp;gt;&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}&lt;br /&gt;
{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}{{#masonry-block: title=Test2&lt;br /&gt;
 | color=blue&lt;br /&gt;
 | width=2&lt;br /&gt;
 | body =&lt;br /&gt;
This should be blue and wider&lt;br /&gt;
}}{{#masonry-block: title=Test&lt;br /&gt;
 | color=orange&lt;br /&gt;
 | body =&lt;br /&gt;
This should be orange&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== MobileFrontend ==&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_mobile}} This link] should open '''mobile''' version&lt;br /&gt;
* [{{fullurl:{{FULLPAGENAME}}|mobileaction=toggle_view_desktop}} This link] should open '''desktop''' version&lt;br /&gt;
&lt;br /&gt;
== MultimediaViewer ==&lt;br /&gt;
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 &amp;lt;code&amp;gt;Open in Media Viewer&amp;lt;/code&amp;gt; button:&lt;br /&gt;
:[[File:JoshuaReynoldsParty.jpg|50px]]&lt;br /&gt;
&lt;br /&gt;
== MyVariables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{CURRENTUSER}} &lt;br /&gt;
; Expected&amp;amp;#160;: Your user name or the IP for anonymous users&lt;br /&gt;
&lt;br /&gt;
== Nuke ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Nuke]]&lt;br /&gt;
&lt;br /&gt;
== OpenGraphMeta ==&lt;br /&gt;
;Test&lt;br /&gt;
[[File:{{#setmainimage:JoshuaReynoldsParty.jpg}}|100px]]&lt;br /&gt;
;Expected:&lt;br /&gt;
[[File:JoshuaReynoldsParty.jpg|100px]]&lt;br /&gt;
&lt;br /&gt;
== OpenID Connect ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PDF Handler ==&lt;br /&gt;
You should see the content of the uploaded PDF ([[media:Imported_vocabulary.pdf|Imported_vocabulary.pdf]]):&lt;br /&gt;
&lt;br /&gt;
[[File:Imported_vocabulary.pdf|page=1|200px|Succeeded]]&lt;br /&gt;
&lt;br /&gt;
== Page Importer ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PageForms ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Forms]]&lt;br /&gt;
&lt;br /&gt;
== PageImages ==&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=pageimages&amp;amp;titles={{PAGENAMEE}} This must not fire a warning about pageimages]&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=help&amp;amp;modules=query This should list '''pageimages''' property]&lt;br /&gt;
&lt;br /&gt;
== Parser Function Helper ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== ParserFunctions ==&lt;br /&gt;
; Test math functions: {{#expr: 4 + 6}}&lt;br /&gt;
; Expected&amp;amp;#160;: 10&lt;br /&gt;
&lt;br /&gt;
; Test string functions: {{#ifeq:{{#expr: 4 + 6}}|10|{{#ifeq:{{#len:Icecream }}|8|{{#len:Icecream }}|disabled}}}}&lt;br /&gt;
; Expected&amp;amp;#160;: {{#ifeq:{{#len:Icecream }}|8|8|disabled}}&lt;br /&gt;
&lt;br /&gt;
== ParserHooks ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Parsoid ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== PluggableAuth ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Poem ==&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;poem&amp;gt;&lt;br /&gt;
Une terre au flanc maigre, âpre, avare, inclément&lt;br /&gt;
Où les vivants pensifs travaillent tristement, &lt;br /&gt;
::Et qui donne à regret à cette race humaine&lt;br /&gt;
Un peu de pain pour tant de labeur et de peine&amp;amp;#160;; &lt;br /&gt;
::Des hommes durs, éclos sur ces sillons ingrats&amp;amp;#160;; &lt;br /&gt;
Des cités d’où s’en vont, en se tordant les bras, &lt;br /&gt;
::La charité, la paix, la foi, sœurs vénérables&amp;amp;#160;; &lt;br /&gt;
L’orgueil chez les puissants et chez les misérables&amp;amp;#160;; &lt;br /&gt;
&amp;lt;/poem&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: A nicely formatted poem&lt;br /&gt;
&lt;br /&gt;
== Renameuser ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RenameUser]]&lt;br /&gt;
&lt;br /&gt;
== Replace Text ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:ReplaceText]]&lt;br /&gt;
&lt;br /&gt;
== RevisionSlider ==&lt;br /&gt;
Check '''Browse history Interactively''' slider interface at the top of ''Difference between revisions'' page ([{{fullurl:{{FULLPAGENAME}}|action=history}} history])&lt;br /&gt;
&lt;br /&gt;
== RottenLinks ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:RottenLinks]]&lt;br /&gt;
&lt;br /&gt;
== SandboxLink ==&lt;br /&gt;
'''Sandbox''' link should be added on user's personal tools menu (at the top)&lt;br /&gt;
&lt;br /&gt;
== Scribunto ==&lt;br /&gt;
=== [[Module:String]] ===&lt;br /&gt;
; Test&amp;amp;#160;: {{#invoke:String|len|This is a test.}} &lt;br /&gt;
; Expected&amp;amp;#160;: 15&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:String]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;html&amp;quot;&amp;gt;&lt;br /&gt;
local p = {}&lt;br /&gt;
function p.len(frame)&lt;br /&gt;
	local s = frame.args[1]&lt;br /&gt;
	return mw.ustring.len( s )&lt;br /&gt;
end&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Semantic Drilldown ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:BrowseData]]&lt;br /&gt;
&lt;br /&gt;
== Semantic Internal Objects ==&lt;br /&gt;
{{#set_internal:Part of recipe&lt;br /&gt;
|Has quantity=1&lt;br /&gt;
|Has unit=cup&lt;br /&gt;
|Has ingredient=flour&lt;br /&gt;
}}&lt;br /&gt;
* Expected: 1&lt;br /&gt;
* Actual: {{#ask:[[Part of recipe::+]][[Has ingredient::flour]][[Has unit::cup]][[Has quantity::&amp;gt;.5]]&lt;br /&gt;
|mainlabel=-&lt;br /&gt;
|? Has quantity=&lt;br /&gt;
|link=none&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Semantic Meeting Minutes ==&lt;br /&gt;
[[Special:FormEdit/Meeting Minutes]] must be a valid form.&lt;br /&gt;
&lt;br /&gt;
== SemanticCompoundQueries ==&lt;br /&gt;
This should produce no error:&lt;br /&gt;
{{#compound_query: [[:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |[[File:+]][[Modification date::+]];?Modification date;limit=1;order=rand&lt;br /&gt;
 |link=none&lt;br /&gt;
 |format=ul&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== SemanticMediaWiki ==&lt;br /&gt;
; Test&amp;amp;#160;:[[Test::NONEXISTENTPAGE|Test]] __SHOWFACTBOX__&lt;br /&gt;
; Expected&amp;amp;#160;:[[NONEXISTENTPAGE|Test]]&lt;br /&gt;
: There should be a factbox at the page bottom.&lt;br /&gt;
&lt;br /&gt;
== SemanticResultFormats ==&lt;br /&gt;
; Test (old wikis)&lt;br /&gt;
{{#ask:[[{{FULLPAGENAME}}]]|?Test|format=datatables}}&lt;br /&gt;
; Expected&lt;br /&gt;
: A nice-looking DataTable with a search field&lt;br /&gt;
&lt;br /&gt;
== SemanticScribunto ==&lt;br /&gt;
&lt;br /&gt;
Should be an icon with information popup -&amp;gt; {{#invoke:SemanticScribuntoTest|info|some text}}&lt;br /&gt;
&lt;br /&gt;
{{#invoke:SemanticScribuntoTest|inlineInfo}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;toccolours mw-collapsible mw-collapsed&amp;quot; style=&amp;quot;width:400px; overflow:auto;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;font-weight:bold;line-height:1.6;&amp;quot;&amp;gt;&lt;br /&gt;
Source of [[Module:SemanticScribuntoTest]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;mw-collapsible-content&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
-- Module:SMW&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
-- set with direct return results&lt;br /&gt;
function p.info( frame )&lt;br /&gt;
&lt;br /&gt;
    if not mw.smw then&lt;br /&gt;
        return &amp;quot;mw.smw module not found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    if frame.args[1] == nil then&lt;br /&gt;
        return &amp;quot;no parameter found&amp;quot;&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    local tooltip&lt;br /&gt;
    if frame.args[2] then&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1], frame.args[2] )&lt;br /&gt;
    else&lt;br /&gt;
        tooltip = mw.smw.info( frame.args[1] )&lt;br /&gt;
    end&lt;br /&gt;
&lt;br /&gt;
    return tooltip&lt;br /&gt;
end&lt;br /&gt;
-- another example, info used inside another function&lt;br /&gt;
function p.inlineInfo( frame )&lt;br /&gt;
&lt;br /&gt;
    local output = 'This is sample output'&lt;br /&gt;
&lt;br /&gt;
    -- so some stuff&lt;br /&gt;
&lt;br /&gt;
    output = output .. mw.smw.info( 'This is a warning', 'warning' )&lt;br /&gt;
&lt;br /&gt;
    -- some more stuff&lt;br /&gt;
&lt;br /&gt;
    return output&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SimpleMathJax ==&lt;br /&gt;
; Note: this extension does not work with the Math extension installed&lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: &amp;lt;math&amp;gt;\int_{(x,y)\in C} x^3\, dx + 4y^2\, dy&amp;lt;/math&amp;gt;&lt;br /&gt;
; Expected&lt;br /&gt;
: ∫(x,y)∈Cx3dx+4y2dy (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
And if &amp;lt;code&amp;gt;SMJ&amp;lt;/code&amp;gt; added as &amp;lt;code&amp;gt;$wgSmjExtraInlineMath = [ [ 'SMJ(', ')SMJ' ] ];&amp;lt;/code&amp;gt; in LocalSettings.php file: &lt;br /&gt;
&lt;br /&gt;
; Test&lt;br /&gt;
: SMJ(E=mc^2)SMJ&lt;br /&gt;
; Expected&lt;br /&gt;
: E=mc^2 (but much better-looking)&lt;br /&gt;
&lt;br /&gt;
== SpamBlacklist ==&lt;br /&gt;
This should display the spam blacklist log: [{{fullurl:Special:Log|type=spamblacklist}} spamblacklist].&lt;br /&gt;
&lt;br /&gt;
== SubPageList ==&lt;br /&gt;
;Result&lt;br /&gt;
{{#subpagecount: }}&lt;br /&gt;
;Expected&lt;br /&gt;
0&lt;br /&gt;
&lt;br /&gt;
== SyntaxHighlight ==&lt;br /&gt;
; Note: this extension make also be referred to as &amp;quot;SyntaxHighlight GeSHi&amp;quot;&lt;br /&gt;
The following must be colorful:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot; line start=3 highlight=&amp;quot;1,5-7&amp;quot;&amp;gt;&lt;br /&gt;
def quick_sort(arr):&lt;br /&gt;
	less = []&lt;br /&gt;
	pivot_list = []&lt;br /&gt;
	more = []&lt;br /&gt;
	if len(arr) &amp;lt;= 1:&lt;br /&gt;
		return arr&lt;br /&gt;
	else:&lt;br /&gt;
		pass&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TemplateData ==&lt;br /&gt;
[{{fullurl:Template:Test|action=edit}} This link should take you to a page with the &amp;lt;code&amp;gt;Manage TemplateData&amp;lt;/code&amp;gt; button] (normally below the first heading).&lt;br /&gt;
&lt;br /&gt;
== TextExtracts ==&lt;br /&gt;
The output should not contain &amp;lt;code&amp;gt;Unrecognized parameter: exchars&amp;lt;/code&amp;gt; error:&lt;br /&gt;
* [{{SERVER}}{{SCRIPTPATH}}/api.php?action=query&amp;amp;prop=extracts&amp;amp;exchars=175&amp;amp;format=json&amp;amp;titles={{FULLPAGENAMEE}} Extract]&lt;br /&gt;
&lt;br /&gt;
== Thanks ==&lt;br /&gt;
[[Special:Log/thanks]] exists.&lt;br /&gt;
&lt;br /&gt;
== TitleBlacklist ==&lt;br /&gt;
;The text should follow:&lt;br /&gt;
{{int: Titleblacklist}}&lt;br /&gt;
&lt;br /&gt;
== TwitterCards ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== UniversalLanguageSelector ==&lt;br /&gt;
No test was invented. The language selector should appear somewhere and the extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Upload Wizard ==&lt;br /&gt;
UploadWizard is displayed at [[:Special:UploadWizard]]&lt;br /&gt;
&lt;br /&gt;
== UserFunctions ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#ifanon:It works|It works}}&lt;br /&gt;
; Expected&amp;amp;#160;: It works&lt;br /&gt;
&lt;br /&gt;
== VEForAll ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Validator ==&lt;br /&gt;
No test was invented. The extension must be listed on [[Special:Version]].&lt;br /&gt;
&lt;br /&gt;
== Variables ==&lt;br /&gt;
; Test&amp;amp;#160;: {{#vardefine:test|testing}}{{#var:test}}&lt;br /&gt;
; Expected&amp;amp;#160;: testing&lt;br /&gt;
&lt;br /&gt;
== VisualEditor ==&lt;br /&gt;
This should load VisualEditor in edit mode:&lt;br /&gt;
[{{fullurl:Main Page|veaction=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WhoIsWatching ==&lt;br /&gt;
Should show the number of watching users below:&lt;br /&gt;
&lt;br /&gt;
{{#whoiswatching:{{FULLPAGENAME}}}}&lt;br /&gt;
&lt;br /&gt;
== Widgets ==&lt;br /&gt;
;Test&lt;br /&gt;
:{{ns:Widget}}&lt;br /&gt;
;Expected&lt;br /&gt;
:Widget&lt;br /&gt;
&lt;br /&gt;
== WikiEditor ==&lt;br /&gt;
This should load a tabbed WikiEditor:&lt;br /&gt;
[{{fullurl:Main Page|action=edit}} edit]&lt;br /&gt;
&lt;br /&gt;
== WikiSEO ==&lt;br /&gt;
{{#seo:&lt;br /&gt;
|title=Your page title&lt;br /&gt;
|titlemode=append&lt;br /&gt;
|keywords=these,are,your,keywords&lt;br /&gt;
|description=Your meta description&lt;br /&gt;
}}&lt;br /&gt;
The page source should contain:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;&amp;lt;/nowiki&amp;gt;Your page title&amp;lt;nowiki&amp;gt;&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;keywords&amp;quot; content=&amp;quot;these,are,your,keywords&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;meta name=&amp;quot;description&amp;quot; content=&amp;quot;Your meta description&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Wiretap ==&lt;br /&gt;
This should be a valid link:&lt;br /&gt;
[[Special:Wiretap]]&lt;br /&gt;
&lt;br /&gt;
== YouTube ==&lt;br /&gt;
&amp;lt;youtube&amp;gt;VyBSS48E4xI&amp;lt;/youtube&amp;gt;&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
	<entry>
		<id>https://integration-ru.familysearch.org/it/wiki/index.php?title=MediaWiki:Common.js&amp;diff=2062</id>
		<title>MediaWiki:Common.js</title>
		<link rel="alternate" type="text/html" href="https://integration-ru.familysearch.org/it/wiki/index.php?title=MediaWiki:Common.js&amp;diff=2062"/>
		<updated>2022-03-14T14:01:24Z</updated>

		<summary type="html">&lt;p&gt;Wikiadmin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;/* Any JavaScript here will be loaded for all users on every page load. */&lt;br /&gt;
&lt;br /&gt;
// test if we're on the home page&lt;br /&gt;
if (/Main_Page/.test(document.location.href)) {&lt;br /&gt;
    $(&amp;quot;#firstHeading&amp;quot;).css(&amp;quot;textAlign&amp;quot;, &amp;quot;center&amp;quot;,&amp;quot;border&amp;quot;, &amp;quot;0&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/* Add Adobe Launch 2020-11-12 &lt;br /&gt;
 * There is a corresponding section in override.php to load the library */&lt;br /&gt;
$(document).ready(function(){&lt;br /&gt;
  // information to record&lt;br /&gt;
  var config = {&lt;br /&gt;
        'site_id': 'FamilySearch',&lt;br /&gt;
        'site_language': mw.config.get('wgContentLanguage'), // e.g. 'en'&lt;br /&gt;
        'page_channel': 'Wiki',&lt;br /&gt;
        'page_detail': document.location.pathname + document.location.search, //'Home' for the homepage or a unique page title for other pages; including querystring&lt;br /&gt;
        'page_type': 'wiki',&lt;br /&gt;
        'visitor_state': 'lo'&lt;br /&gt;
    };&lt;br /&gt;
    // send it&lt;br /&gt;
    _satellite.track('page_view', config);&lt;br /&gt;
    console.log(&amp;quot;recorded page view for &amp;quot; + config.page_detail);&lt;br /&gt;
});&lt;br /&gt;
/* End Adobe Launch code */&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function getCookie(name) {&lt;br /&gt;
    var re = new RegExp(name + &amp;quot;=([^;]+)&amp;quot;);&lt;br /&gt;
    var value = re.exec(document.cookie);&lt;br /&gt;
    return (value !== null) ? unescape(value[1]) : null;&lt;br /&gt;
}&lt;br /&gt;
setTimeout(function() {&lt;br /&gt;
    var templeCookie = getCookie('fs-highconf') || getCookie('fs-templeinfo');&lt;br /&gt;
    if (templeCookie &amp;amp;&amp;amp; templeCookie.indexOf('true') &amp;gt; -1) {&lt;br /&gt;
        var body = document.querySelector('body');&lt;br /&gt;
        body.classList.add('templeMember');&lt;br /&gt;
    }&lt;br /&gt;
}, 2000);&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Test if an element has a certain class&lt;br /&gt;
 * @deprecated:  Use $(element).hasClass() instead.&lt;br /&gt;
 */&lt;br /&gt;
mw.log.deprecate( window, 'hasClass', function ( element, className ) {&lt;br /&gt;
    return $( element ).hasClass( className );&lt;br /&gt;
}, 'Use jQuery.hasClass() instead' );&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Collapsible tables&lt;br /&gt;
 *&lt;br /&gt;
 * Allows tables to be collapsed, showing only the header. See [[Wikipedia:NavFrame]].&lt;br /&gt;
 *&lt;br /&gt;
 * @version 2.0.3 (2014-03-14)&lt;br /&gt;
 * @source https://www.mediawiki.org/wiki/MediaWiki:Gadget-collapsibleTables.js&lt;br /&gt;
 * @author [[User:R. Koot]]&lt;br /&gt;
 * @author [[User:Krinkle]]&lt;br /&gt;
 * @deprecated Since MediaWiki 1.20: Use class=&amp;quot;mw-collapsible&amp;quot; instead which&lt;br /&gt;
 * is supported in MediaWiki core.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
var autoCollapse = 2;&lt;br /&gt;
var collapseCaption = 'hide';&lt;br /&gt;
var expandCaption = 'show';&lt;br /&gt;
var tableIndex = 0;&lt;br /&gt;
&lt;br /&gt;
function collapseTable( tableIndex ) {&lt;br /&gt;
    var Button = document.getElementById( 'collapseButton' + tableIndex );&lt;br /&gt;
    var Table = document.getElementById( 'collapsibleTable' + tableIndex );&lt;br /&gt;
&lt;br /&gt;
    if ( !Table || !Button ) {&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    var Rows = Table.rows;&lt;br /&gt;
    var i;&lt;br /&gt;
&lt;br /&gt;
    if ( Button.firstChild.data === collapseCaption ) {&lt;br /&gt;
        for ( i = 1; i &amp;lt; Rows.length; i++ ) {&lt;br /&gt;
            Rows[i].style.display = 'none';&lt;br /&gt;
        }&lt;br /&gt;
        Button.firstChild.data = expandCaption;&lt;br /&gt;
    } else {&lt;br /&gt;
        for ( i = 1; i &amp;lt; Rows.length; i++ ) {&lt;br /&gt;
            Rows[i].style.display = Rows[0].style.display;&lt;br /&gt;
        }&lt;br /&gt;
        Button.firstChild.data = collapseCaption;&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function createClickHandler( tableIndex ) {&lt;br /&gt;
    return function ( e ) {&lt;br /&gt;
        e.preventDefault();&lt;br /&gt;
        collapseTable( tableIndex );&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function createCollapseButtons( $content ) {&lt;br /&gt;
    var NavigationBoxes = {};&lt;br /&gt;
    var $Tables = $content.find( 'table' );&lt;br /&gt;
    var i;&lt;br /&gt;
&lt;br /&gt;
    $Tables.each( function( i, table ) {&lt;br /&gt;
        if ( $(table).hasClass( 'collapsible' ) ) {&lt;br /&gt;
&lt;br /&gt;
            /* only add button and increment count if there is a header row to work with */&lt;br /&gt;
            var HeaderRow = table.getElementsByTagName( 'tr' )[0];&lt;br /&gt;
            if ( !HeaderRow ) {&lt;br /&gt;
                return;&lt;br /&gt;
            }&lt;br /&gt;
            var Header = table.getElementsByTagName( 'th' )[0];&lt;br /&gt;
            if ( !Header ) {&lt;br /&gt;
                return;&lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
            NavigationBoxes[ tableIndex ] = table;&lt;br /&gt;
            table.setAttribute( 'id', 'collapsibleTable' + tableIndex );&lt;br /&gt;
&lt;br /&gt;
            var Button     = document.createElement( 'span' );&lt;br /&gt;
            var ButtonLink = document.createElement( 'a' );&lt;br /&gt;
            var ButtonText = document.createTextNode( collapseCaption );&lt;br /&gt;
            // Styles are declared in [[MediaWiki:Common.css]]&lt;br /&gt;
            Button.className = 'collapseButton';&lt;br /&gt;
&lt;br /&gt;
            ButtonLink.style.color = Header.style.color;&lt;br /&gt;
            ButtonLink.setAttribute( 'id', 'collapseButton' + tableIndex );&lt;br /&gt;
            ButtonLink.setAttribute( 'href', '#' );&lt;br /&gt;
            $( ButtonLink ).on( 'click', createClickHandler( tableIndex ) );&lt;br /&gt;
            ButtonLink.appendChild( ButtonText );&lt;br /&gt;
&lt;br /&gt;
            Button.appendChild( document.createTextNode( '[' ) );&lt;br /&gt;
            Button.appendChild( ButtonLink );&lt;br /&gt;
            Button.appendChild( document.createTextNode( ']' ) );&lt;br /&gt;
&lt;br /&gt;
            Header.insertBefore( Button, Header.firstChild );&lt;br /&gt;
            tableIndex++;&lt;br /&gt;
        }&lt;br /&gt;
    } );&lt;br /&gt;
&lt;br /&gt;
    for ( i = 0;  i &amp;lt; tableIndex; i++ ) {&lt;br /&gt;
        if ( $( NavigationBoxes[i] ).hasClass( 'collapsed' ) ||&lt;br /&gt;
            ( tableIndex &amp;gt;= autoCollapse &amp;amp;&amp;amp; $( NavigationBoxes[i] ).hasClass( 'autocollapse' ) )&lt;br /&gt;
        ) {&lt;br /&gt;
            collapseTable( i );&lt;br /&gt;
        }&lt;br /&gt;
        else if ( $( NavigationBoxes[i] ).hasClass ( 'innercollapse' ) ) {&lt;br /&gt;
            var element = NavigationBoxes[i];&lt;br /&gt;
            while ((element = element.parentNode)) {&lt;br /&gt;
                if ( $( element ).hasClass( 'outercollapse' ) ) {&lt;br /&gt;
                    collapseTable ( i );&lt;br /&gt;
                    break;&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
mw.hook( 'wikipage.content' ).add( createCollapseButtons );&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Dynamic Navigation Bars (experimental)&lt;br /&gt;
 *&lt;br /&gt;
 * Description: See [[Wikipedia:NavFrame]].&lt;br /&gt;
 * Maintainers: UNMAINTAINED&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
/* set up the words in your language */&lt;br /&gt;
var NavigationBarHide = '[' + collapseCaption + ']';&lt;br /&gt;
var NavigationBarShow = '[' + expandCaption + ']';&lt;br /&gt;
var indexNavigationBar = 0;&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Shows and hides content and picture (if available) of navigation bars&lt;br /&gt;
 * Parameters:&lt;br /&gt;
 *     indexNavigationBar: the index of navigation bar to be toggled&lt;br /&gt;
 **/&lt;br /&gt;
window.toggleNavigationBar = function ( indexNavigationBar, event ) {&lt;br /&gt;
    var NavToggle = document.getElementById( 'NavToggle' + indexNavigationBar );&lt;br /&gt;
    var NavFrame = document.getElementById( 'NavFrame' + indexNavigationBar );&lt;br /&gt;
    var NavChild;&lt;br /&gt;
&lt;br /&gt;
    if ( !NavFrame || !NavToggle ) {&lt;br /&gt;
        return false;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    /* if shown now */&lt;br /&gt;
    if ( NavToggle.firstChild.data === NavigationBarHide ) {&lt;br /&gt;
        for ( NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {&lt;br /&gt;
            if ( $( NavChild ).hasClass( 'NavContent' ) || $( NavChild ).hasClass( 'NavPic' ) ) {&lt;br /&gt;
                NavChild.style.display = 'none';&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    NavToggle.firstChild.data = NavigationBarShow;&lt;br /&gt;
&lt;br /&gt;
    /* if hidden now */&lt;br /&gt;
    } else if ( NavToggle.firstChild.data === NavigationBarShow ) {&lt;br /&gt;
        for ( NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {&lt;br /&gt;
            if ( $( NavChild ).hasClass( 'NavContent' ) || $( NavChild ).hasClass( 'NavPic' ) ) {&lt;br /&gt;
                NavChild.style.display = 'block';&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        NavToggle.firstChild.data = NavigationBarHide;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    event.preventDefault();&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
/* adds show/hide-button to navigation bars */&lt;br /&gt;
function createNavigationBarToggleButton( $content ) {&lt;br /&gt;
    var NavChild;&lt;br /&gt;
    /* iterate over all &amp;lt; div &amp;gt;-elements */&lt;br /&gt;
    var $divs = $content.find( 'div' );&lt;br /&gt;
    $divs.each( function ( i, NavFrame ) {&lt;br /&gt;
        /* if found a navigation bar */&lt;br /&gt;
        if ( $( NavFrame ).hasClass( 'NavFrame' ) ) {&lt;br /&gt;
&lt;br /&gt;
            indexNavigationBar++;&lt;br /&gt;
            var NavToggle = document.createElement( 'a' );&lt;br /&gt;
            NavToggle.className = 'NavToggle';&lt;br /&gt;
            NavToggle.setAttribute( 'id', 'NavToggle' + indexNavigationBar );&lt;br /&gt;
            NavToggle.setAttribute( 'href', '#' );&lt;br /&gt;
            $( NavToggle ).on( 'click', $.proxy( window.toggleNavigationBar, window, indexNavigationBar ) );&lt;br /&gt;
&lt;br /&gt;
            var isCollapsed = $( NavFrame ).hasClass( 'collapsed' );&lt;br /&gt;
            /**&lt;br /&gt;
             * Check if any children are already hidden.  This loop is here for backwards compatibility:&lt;br /&gt;
             * the old way of making NavFrames start out collapsed was to manually add style=&amp;quot;display:none&amp;quot;&lt;br /&gt;
             * to all the NavPic/NavContent elements.  Since this was bad for accessibility (no way to make&lt;br /&gt;
             * the content visible without JavaScript support), the new recommended way is to add the class&lt;br /&gt;
             * &amp;quot;collapsed&amp;quot; to the NavFrame itself, just like with collapsible tables.&lt;br /&gt;
             */&lt;br /&gt;
            for ( NavChild = NavFrame.firstChild; NavChild != null &amp;amp;&amp;amp; !isCollapsed; NavChild = NavChild.nextSibling ) {&lt;br /&gt;
                if ( $( NavChild ).hasClass( 'NavPic' ) || $( NavChild ).hasClass( 'NavContent' ) ) {&lt;br /&gt;
                    if ( NavChild.style.display === 'none' ) {&lt;br /&gt;
                        isCollapsed = true;&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            if ( isCollapsed ) {&lt;br /&gt;
                for ( NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling ) {&lt;br /&gt;
                    if ( $( NavChild ).hasClass( 'NavPic' ) || $( NavChild ).hasClass( 'NavContent' ) ) {&lt;br /&gt;
                        NavChild.style.display = 'none';&lt;br /&gt;
                    }&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            var NavToggleText = document.createTextNode( isCollapsed ? NavigationBarShow : NavigationBarHide );&lt;br /&gt;
            NavToggle.appendChild( NavToggleText );&lt;br /&gt;
&lt;br /&gt;
            /* Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked) */&lt;br /&gt;
            for( var j = 0; j &amp;lt; NavFrame.childNodes.length; j++ ) {&lt;br /&gt;
                if ( $( NavFrame.childNodes[j] ).hasClass( 'NavHead' ) ) {&lt;br /&gt;
                    NavToggle.style.color = NavFrame.childNodes[j].style.color;&lt;br /&gt;
                    NavFrame.childNodes[j].appendChild( NavToggle );&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
            NavFrame.setAttribute( 'id', 'NavFrame' + indexNavigationBar );&lt;br /&gt;
        }&lt;br /&gt;
    } );&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
mw.hook( 'wikipage.content' ).add( createNavigationBarToggleButton );&lt;br /&gt;
&lt;br /&gt;
/* Added for Accordion button */&lt;br /&gt;
(function() {&lt;br /&gt;
var acc = document.getElementsByClassName(&amp;quot;accordion&amp;quot;);&lt;br /&gt;
var i;&lt;br /&gt;
&lt;br /&gt;
for (i = 0; i &amp;lt; acc.length; i++) {&lt;br /&gt;
    acc[i].onclick = function(){&lt;br /&gt;
        /* Toggle between adding and removing the &amp;quot;active&amp;quot; class,&lt;br /&gt;
        to highlight the button that controls the panel */&lt;br /&gt;
        this.classList.toggle(&amp;quot;active&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
        /* Toggle between hiding and showing the active panel */&lt;br /&gt;
        var panel = this.nextElementSibling;&lt;br /&gt;
        if (panel.style.display === &amp;quot;block&amp;quot;) {&lt;br /&gt;
            panel.style.display = &amp;quot;none&amp;quot;;&lt;br /&gt;
        } else {&lt;br /&gt;
            panel.style.display = &amp;quot;block&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
})();&lt;br /&gt;
&lt;br /&gt;
/* end Accordion button */&lt;br /&gt;
&lt;br /&gt;
/* This is where the code for inserting the Location Map starts. */&lt;br /&gt;
(function() {&lt;br /&gt;
      if (document.querySelector('h1#firstHeading').innerHTML === &amp;quot;Guided Research for Online Records&amp;quot;) {&lt;br /&gt;
&lt;br /&gt;
        var polyfill = document.createElement('script');&lt;br /&gt;
        polyfill.type = 'text/javascript';&lt;br /&gt;
        polyfill.async = true;&lt;br /&gt;
        polyfill.src = 'https://edge.fscdn.org/assets/components/mapFiles/webcomponentsjs/webcomponents-lite-60405515c49744988a6a24e03dedf15a.js';&lt;br /&gt;
        var s = document.getElementsByTagName('script')[0];&lt;br /&gt;
        s.parentNode.insertBefore(polyfill, s);&lt;br /&gt;
&lt;br /&gt;
        var locationMap = document.createElement('link');&lt;br /&gt;
        locationMap.rel = 'import';&lt;br /&gt;
/* CHANGE NEEDED: update URL below every time the location-map.html is changed */&lt;br /&gt;
        locationMap.href = 'https://gist.githubusercontent.com/ahancey/a86414a07c7c1466cc36ffb790a0817d/raw/748a662f88adf92729d925ebf5fb1ce26ec0bb38/location-map.html';&lt;br /&gt;
       var s = document.getElementsByTagName('script')[0];&lt;br /&gt;
        s.parentNode.insertBefore(locationMap, s);&lt;br /&gt;
&lt;br /&gt;
        document.querySelector('#mw-content-text p').innerHTML = &amp;quot;&amp;lt;div style='width: 1000px;'&amp;gt;&amp;lt;location-map&amp;gt;&amp;lt;/location-map&amp;gt;&amp;lt;/div&amp;gt;&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
})();&lt;br /&gt;
&lt;br /&gt;
/* code for new landing page */&lt;br /&gt;
// test if we're on the home page&lt;br /&gt;
if ( /Main_Page/.test(document.location.href) ) {&lt;br /&gt;
    $(&amp;quot;#firstHeading&amp;quot;).css(&amp;quot;border&amp;quot;, &amp;quot;0&amp;quot;, &amp;quot;textAlign&amp;quot;, &amp;quot;center&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * Conditional include of Map Menus data structure &lt;br /&gt;
 * and all the Map Menus functionality&lt;br /&gt;
 * - only for pages with 'Main Page' in the title&lt;br /&gt;
 */&lt;br /&gt;
// test if we're on the home page &amp;amp; on beta&lt;br /&gt;
if ( /Main_Page/.test(document.location.href) ) {&lt;br /&gt;
    // console.log('loading menus data');&lt;br /&gt;
    mw.loader.load('/en/wiki/index.php?title=MediaWiki:MapMenu.js&amp;amp;action=raw&amp;amp;ctype=text/javascript');&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Attach a click handler to our buttons to show the &amp;quot;countries&amp;quot; menus&lt;br /&gt;
     */&lt;br /&gt;
    $('[id$=_button]').click(function () {&lt;br /&gt;
        // show the menu in case it's hidden&lt;br /&gt;
        $(&amp;quot;#menu&amp;quot;).show();&lt;br /&gt;
        var position = this.id.indexOf('_button');&lt;br /&gt;
        var name = this.id.substring(0, position);&lt;br /&gt;
        name += &amp;quot;_countries&amp;quot;;&lt;br /&gt;
        // console.log (&amp;quot;showing list for &amp;quot; + name);&lt;br /&gt;
        if (name == 'all_countries_countries') {&lt;br /&gt;
            showAllCountries();&lt;br /&gt;
        } else {&lt;br /&gt;
            showList(name);&lt;br /&gt;
        }&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Attach a click handler to &amp;quot;links&amp;quot; (spans with class .menulink) in the menus.&lt;br /&gt;
     * Because the menus are dynamic, we use a &amp;quot;delegated&amp;quot; event handler&lt;br /&gt;
     * with jQuery's .on()&lt;br /&gt;
     * https://api.jquery.com/on/&lt;br /&gt;
     */&lt;br /&gt;
    $(&amp;quot;#menu&amp;quot;).on(&amp;quot;click&amp;quot;, &amp;quot;.menulink&amp;quot;, function () {&lt;br /&gt;
        // console.log( $( this ).text() );&lt;br /&gt;
        // find out what menu to show&lt;br /&gt;
        var menu = $(this).text().toLowerCase();&lt;br /&gt;
        // replace all the blanks&lt;br /&gt;
        menu = menu.replace(/ /g, &amp;quot;_&amp;quot;);&lt;br /&gt;
        menu = menu + &amp;quot;_states&amp;quot;;&lt;br /&gt;
        // console.log(&amp;quot;showing menu for &amp;quot; + menu);&lt;br /&gt;
        showList(menu);&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    /**&lt;br /&gt;
     * Add an event listener to state and country menus&lt;br /&gt;
     * so that clicking the red [x] will close the menu.&lt;br /&gt;
     */&lt;br /&gt;
    $(&amp;quot;#menu&amp;quot;).on(&amp;quot;click&amp;quot;, &amp;quot;.exit&amp;quot;, function () {&lt;br /&gt;
        var menu = $(&amp;quot;.exit&amp;quot;).parent().attr(&amp;quot;parent&amp;quot;);&lt;br /&gt;
        if (menu) {&lt;br /&gt;
            showList(menu);&lt;br /&gt;
        } else {&lt;br /&gt;
            //showAllCountries();&lt;br /&gt;
            $(&amp;quot;#menu&amp;quot;).hide();&lt;br /&gt;
        }&lt;br /&gt;
    });&lt;br /&gt;
}&lt;br /&gt;
/* end code for landing page*/&lt;br /&gt;
&lt;br /&gt;
/** 2020/08/31 Add code for new Help Menu Overlay */&lt;br /&gt;
// URL for bringing in the bundle to the wiki&lt;br /&gt;
const url = '/wiki/public_html/helptray.js';&lt;br /&gt;
// the selector for the Help button in the header&lt;br /&gt;
const button = document.querySelector('#helpLink');&lt;br /&gt;
button.addEventListener('click', function () {&lt;br /&gt;
  // If the script that brings in the Help Overlay isn't on the page yet, we know&lt;br /&gt;
  // we need to load it in&lt;br /&gt;
  if ( typeof window.renderHelpTray === &amp;quot;undefined&amp;quot; ) {&lt;br /&gt;
    const script = document.createElement('script');&lt;br /&gt;
    script.setAttribute('src', url);&lt;br /&gt;
    // Once the script loads, we need to do a little more set up and then actually&lt;br /&gt;
    // open the Help Overlay&lt;br /&gt;
    script.onload = function () {&lt;br /&gt;
      // This event is fired when the Help Overlay is rendered for the first time&lt;br /&gt;
      // Setting { once: true } as an option avoids the potential for multiple&lt;br /&gt;
      // times getting called. Once this event fires, we just fire the event to&lt;br /&gt;
      // let the Help Overlay it needs to open&lt;br /&gt;
      document.addEventListener('helpTrayReady', function () {&lt;br /&gt;
        document.dispatchEvent(new CustomEvent('openHelpTray'));&lt;br /&gt;
      }, { once: true });&lt;br /&gt;
      // Here we create an element to render the Help Overlay on. Just a generic div works&lt;br /&gt;
      const renderDiv = document.createElement('div');&lt;br /&gt;
      // We add an ID in case we need to easily reference it elsewhere&lt;br /&gt;
      renderDiv.id = 'helpOverlayRoot';&lt;br /&gt;
      // If you go the route of creating the element programatically, be sure to add it&lt;br /&gt;
      // to the body somewhere. Here we just put at the end of the &amp;lt;body&amp;gt;&lt;br /&gt;
      document.body.appendChild(renderDiv);&lt;br /&gt;
      // This is a consistent way to get info about the size and position of the button&lt;br /&gt;
      // We can use this to determine where to set the initial position (the x being pulled&lt;br /&gt;
      // out here will be the left of the button, which is the correct x value to start the&lt;br /&gt;
      // help tray at. The y is the top of the button, which we can add the button's height&lt;br /&gt;
      // to in order to get the correct y value to start the help tray at)&lt;br /&gt;
      const rect = button.getBoundingClientRect();&lt;br /&gt;
      const x = rect.left;&lt;br /&gt;
      const y = rect.top;&lt;br /&gt;
      const height = rect.height;&lt;br /&gt;
      // Finally, call the renderHelpTray function with the element (required) and the&lt;br /&gt;
      // initial position (optional but highly recommended)&lt;br /&gt;
      window.renderHelpTray(renderDiv, [x, y + height]);&lt;br /&gt;
    };&lt;br /&gt;
    document.head.insertBefore(script, document.head.firstChild);&lt;br /&gt;
  } else {&lt;br /&gt;
    // If we get to this else, the script is already on the page, so we just need&lt;br /&gt;
    // to dispatch the appropriate event. At a minimum, this can just fire the&lt;br /&gt;
    // openHelpTray event, but the ideal scenario is that the button click acts as&lt;br /&gt;
    // a toggle. This example shows how to check if the Help Overlay is already open&lt;br /&gt;
    // on the page, and fires the appropriate event based on that&lt;br /&gt;
    const eventName = document.querySelector('[data-test=helpOverlayCloseButton]') ? 'closeHelpTray' : 'openHelpTray';&lt;br /&gt;
    document.dispatchEvent(new CustomEvent(eventName));&lt;br /&gt;
  }&lt;br /&gt;
});&lt;/div&gt;</summary>
		<author><name>Wikiadmin</name></author>
	</entry>
</feed>