2006-06-01 05:58:52 +00:00
# Force the test runner to ensure the extension is loaded
!! hooks
ref
references
!! endhooks
!! test
Simple <ref>, no <references/>
!! input
Wikipedia rocks!<ref>Proceeds of Rockology, vol. XXI</ref>
!! result
2009-03-31 14:26:40 +00:00
<p>Wikipedia rocks!<sup id="cite_ref-0" class="reference"><a href="#cite_note-0">[1]</a></sup>
2006-06-01 05:58:52 +00:00
</p>
2009-01-26 18:02:28 +00:00
<br /><strong class="error">Cite error: <code><ref></code> tags exist, but no <code><references/></code> tag was found</strong>
2006-06-01 05:58:52 +00:00
!! end
!! test
Simple <ref>, with <references/>
!! input
Wikipedia rocks!<ref>Proceeds of Rockology, vol. XXI</ref>
<references/>
!! result
2009-03-31 14:26:40 +00:00
<p>Wikipedia rocks!<sup id="cite_ref-0" class="reference"><a href="#cite_note-0">[1]</a></sup>
2006-06-01 05:58:52 +00:00
</p>
2009-03-31 14:26:40 +00:00
<ol class="references"><li id="cite_note-0"><a href="#cite_ref-0">↑</a> Proceeds of Rockology, vol. XXI</li></ol>
2006-06-01 05:58:52 +00:00
!! end
!! article
Template:Simple template
!! text
A ''simple'' template.
!! endarticle
!! test
<ref> with a simple template
!! input
Templating<ref>{{simple template}}</ref>
<references/>
!! result
2009-03-31 14:26:40 +00:00
<p>Templating<sup id="cite_ref-0" class="reference"><a href="#cite_note-0">[1]</a></sup>
2006-06-01 05:58:52 +00:00
</p>
2009-03-31 14:26:40 +00:00
<ol class="references"><li id="cite_note-0"><a href="#cite_ref-0">↑</a> A <i>simple</i> template.</li></ol>
2006-06-01 05:58:52 +00:00
!! end
!! test
<ref> with a <nowiki>
!! input
Templating<ref><nowiki>{{simple template}}</nowiki></ref>
<references/>
!! result
2009-03-31 14:26:40 +00:00
<p>Templating<sup id="cite_ref-0" class="reference"><a href="#cite_note-0">[1]</a></sup>
2006-06-01 05:58:52 +00:00
</p>
2009-03-31 14:26:40 +00:00
<ol class="references"><li id="cite_note-0"><a href="#cite_ref-0">↑</a> {{simple template}}</li></ol>
2006-06-01 05:58:52 +00:00
!! end
!! test
<ref> in a <nowiki>
!! input
Templating<nowiki><ref>{{simple template}}</ref></nowiki>
<references/>
!! result
<p>Templating<ref>{{simple template}}</ref>
2007-05-09 14:48:05 +00:00
</p><p><br />
2006-06-01 05:58:52 +00:00
</p>
!! end
!! test
<ref> in a <!--comment-->
!! input
Templating<!--<ref>{{simple template}}</ref>-->
<references/>
!! result
<p>Templating
2007-05-09 14:48:05 +00:00
</p><p><br />
2006-06-01 05:58:52 +00:00
</p>
!! end
!! test
<!--comment--> in a <ref> (bug 5384)
!! input
Templating<ref>Text<!--comment--></ref>
<references/>
!! result
2009-03-31 14:26:40 +00:00
<p>Templating<sup id="cite_ref-0" class="reference"><a href="#cite_note-0">[1]</a></sup>
2006-06-01 05:58:52 +00:00
</p>
2009-03-31 14:26:40 +00:00
<ol class="references"><li id="cite_note-0"><a href="#cite_ref-0">↑</a> Text</li></ol>
2006-06-01 05:58:52 +00:00
!! end
2006-06-01 21:11:29 +00:00
!! test
<references> after <gallery> (bug 6164)
!! input
<ref>one</ref>
<gallery>Image:Foobar.jpg</gallery>
<references/>
!! result
2009-03-31 14:26:40 +00:00
<p><sup id="cite_ref-0" class="reference"><a href="#cite_note-0">[1]</a></sup>
2006-06-01 21:11:29 +00:00
</p>
2007-02-04 03:12:57 +00:00
<table class="gallery" cellspacing="0" cellpadding="0">
<tr>
2007-09-13 19:24:43 +00:00
<td><div class="gallerybox" style="width: 155px;">
2010-02-01 21:44:34 +00:00
<div class="thumb" style="padding: 66px 0; width: 150px;"><div style="margin-left: auto; margin-right: auto; width: 120px;"><a href="/wiki/File:Foobar.jpg" class="image"><img alt="Foobar.jpg" src="http://example.com/images/3/3a/Foobar.jpg" width="120" height="14" /></a></div></div>
2007-02-04 03:12:57 +00:00
<div class="gallerytext">
</div>
</div></td>
</tr>
2006-06-01 21:11:29 +00:00
</table>
2009-03-31 14:26:40 +00:00
<ol class="references"><li id="cite_note-0"><a href="#cite_ref-0">↑</a> one</li></ol>
2006-06-01 21:11:29 +00:00
!! end
2006-07-10 17:59:37 +00:00
!! test
{{REVISIONID}} on page with <ref> (bug 6299)
!! input
{{REVISIONID}}<ref>elite</ref>
!! result
2009-03-31 14:26:40 +00:00
<p>1337<sup id="cite_ref-0" class="reference"><a href="#cite_note-0">[1]</a></sup>
2006-07-10 17:59:37 +00:00
</p>
2009-01-26 18:02:28 +00:00
<br /><strong class="error">Cite error: <code><ref></code> tags exist, but no <code><references/></code> tag was found</strong>
2006-07-10 17:59:37 +00:00
!! end
!! test
{{REVISIONID}} on page without <ref> (bug 6299 sanity check)
!! input
{{REVISIONID}}
!! result
<p>1337
</p>
!! end
2006-11-03 15:34:46 +00:00
!! test
Blank ref followed by ref with content
!! input
<ref name="blank"/>
<ref name="blank">content</ref>
<references/>
!! result
2009-03-31 14:26:40 +00:00
<p><sup id="cite_ref-blank_0-0" class="reference"><a href="#cite_note-blank-0">[1]</a></sup>
</p><p><sup id="cite_ref-blank_0-1" class="reference"><a href="#cite_note-blank-0">[1]</a></sup>
2006-11-03 15:34:46 +00:00
</p>
2009-03-31 14:26:40 +00:00
<ol class="references"><li id="cite_note-blank-0">↑ <sup><a href="#cite_ref-blank_0-0">1.0</a></sup> <sup><a href="#cite_ref-blank_0-1">1.1</a></sup> content</li></ol>
2006-11-03 15:34:46 +00:00
!! end
!! test
Regression: non-blank ref "0" followed by ref with content
!! input
<ref name="blank">0</ref>
<ref name="blank">content</ref>
<references/>
!! result
2009-03-31 14:26:40 +00:00
<p><sup id="cite_ref-blank_0-0" class="reference"><a href="#cite_note-blank-0">[1]</a></sup>
</p><p><sup id="cite_ref-blank_0-1" class="reference"><a href="#cite_note-blank-0">[1]</a></sup>
2006-11-03 15:34:46 +00:00
</p>
2009-03-31 14:26:40 +00:00
<ol class="references"><li id="cite_note-blank-0">↑ <sup><a href="#cite_ref-blank_0-0">1.0</a></sup> <sup><a href="#cite_ref-blank_0-1">1.1</a></sup> 0</li></ol>
2006-11-03 15:34:46 +00:00
!! end
!! test
Regression sanity check: non-blank ref "1" followed by ref with content
!! input
<ref name="blank">1</ref>
<ref name="blank">content</ref>
<references/>
!! result
2009-03-31 14:26:40 +00:00
<p><sup id="cite_ref-blank_0-0" class="reference"><a href="#cite_note-blank-0">[1]</a></sup>
</p><p><sup id="cite_ref-blank_0-1" class="reference"><a href="#cite_note-blank-0">[1]</a></sup>
2006-11-03 15:34:46 +00:00
</p>
2009-03-31 14:26:40 +00:00
<ol class="references"><li id="cite_note-blank-0">↑ <sup><a href="#cite_ref-blank_0-0">1.0</a></sup> <sup><a href="#cite_ref-blank_0-1">1.1</a></sup> 1</li></ol>
2006-11-03 15:34:46 +00:00
!! end
2007-12-16 18:49:10 +00:00
2007-12-27 22:25:15 +00:00
!! test
Ref names containing a number
!! input
<ref name="test123test">One</ref>
<ref name="123test">Two</ref>
<ref name="test123">Three</ref>
<references />
!! result
2009-03-31 14:26:40 +00:00
<p><sup id="cite_ref-test123test_0-0" class="reference"><a href="#cite_note-test123test-0">[1]</a></sup>
<sup id="cite_ref-123test_1-0" class="reference"><a href="#cite_note-123test-1">[2]</a></sup>
<sup id="cite_ref-test123_2-0" class="reference"><a href="#cite_note-test123-2">[3]</a></sup>
2007-12-27 22:25:15 +00:00
</p>
2009-03-31 14:26:40 +00:00
<ol class="references"><li id="cite_note-test123test-0"><a href="#cite_ref-test123test_0-0">↑</a> One</li>
<li id="cite_note-123test-1"><a href="#cite_ref-123test_1-0">↑</a> Two</li>
<li id="cite_note-test123-2"><a href="#cite_ref-test123_2-0">↑</a> Three</li></ol>
2007-12-27 22:25:15 +00:00
!! end
2007-12-16 18:49:10 +00:00
!! test
Erroneous refs
!! input
<ref name="0">Zero</ref>
<ref>Also zero, but differently! (Normal ref)</ref>
<ref />
<ref name="foo" name="bar" />
<ref name="blankwithnoreference" />
<references name="quasit" />
<references />
!! result
2008-04-18 22:48:57 +00:00
<p><strong class="error">Cite error: Invalid <code><ref></code> tag;
name cannot be a simple integer. Use a descriptive title</strong>
2009-03-31 14:26:40 +00:00
</p><p><sup id="cite_ref-0" class="reference"><a href="#cite_note-0">[1]</a></sup>
2008-04-18 22:48:57 +00:00
</p><p><strong class="error">Cite error: Invalid <code><ref></code> tag;
refs with no content must have a name</strong>
2009-03-31 14:26:40 +00:00
</p><p><sup id="cite_ref-bar_1-0" class="reference"><a href="#cite_note-bar-1">[2]</a></sup>
</p><p><sup id="cite_ref-blankwithnoreference_2-0" class="reference"><a href="#cite_note-blankwithnoreference-2">[3]</a></sup>
2008-04-18 22:48:57 +00:00
</p><p><strong class="error">Cite error: Invalid <code><references></code> tag;
2009-01-26 18:02:28 +00:00
parameter "group" is allowed only.
2009-06-05 16:04:19 +00:00
Use <code><references /></code>, or <code><references group="..." /></code></strong>
2007-12-16 18:49:10 +00:00
</p>
2009-03-31 14:26:40 +00:00
<ol class="references"><li id="cite_note-0"><a href="#cite_ref-0">↑</a> Also zero, but differently! (Normal ref)</li>
<li id="cite_note-bar"><a href="#cite_ref-bar_0">↑</a> <strong class="error">Cite error: Invalid <code><ref></code> tag;
2008-04-18 22:48:57 +00:00
no text was provided for refs named <code>bar</code></strong></li>
2009-03-31 14:26:40 +00:00
<li id="cite_note-blankwithnoreference"><a href="#cite_ref-blankwithnoreference_0">↑</a> <strong class="error">Cite error: Invalid <code><ref></code> tag;
2008-04-18 22:48:57 +00:00
no text was provided for refs named <code>blankwithnoreference</code></strong></li></ol>
2007-12-16 18:49:10 +00:00
!! end
2007-12-16 20:18:33 +00:00
2008-03-21 15:25:26 +00:00
!! test
Simple <ref>, with <references/> in group
!! input
Wikipedia rocks!<ref>Proceeds of Rockology, vol. XXI</ref>
Wikipedia rocks!<ref group=note>Proceeds of Rockology, vol. XXI</ref>
<references/>
<references group=note/>
!! result
2009-03-31 14:26:40 +00:00
<p>Wikipedia rocks!<sup id="cite_ref-0" class="reference"><a href="#cite_note-0">[1]</a></sup>
Wikipedia rocks!<sup id="cite_ref-1" class="reference"><a href="#cite_note-1">[note 1]</a></sup>
2008-03-21 15:25:26 +00:00
</p>
2009-03-31 14:26:40 +00:00
<ol class="references"><li id="cite_note-0"><a href="#cite_ref-0">↑</a> Proceeds of Rockology, vol. XXI</li></ol>
<ol class="references"><li id="cite_note-1"><a href="#cite_ref-1">↑</a> Proceeds of Rockology, vol. XXI</li></ol>
2008-03-21 15:25:26 +00:00
!! end
2008-06-20 18:41:14 +00:00
!! test
Simple <ref>, with <references/> in group, with groupname in chinese
!! input
AAA<ref group="参">ref a</ref>BBB<ref group="注">note b</ref>CCC<ref group="参">ref c</ref>
;refs
<references group="参" />
;notes
<references group="注" />
!! result
2009-03-31 14:26:40 +00:00
<p>AAA<sup id="cite_ref-0" class="reference"><a href="#cite_note-0">[参 1]</a></sup>BBB<sup id="cite_ref-1" class="reference"><a href="#cite_note-1">[注 1]</a></sup>CCC<sup id="cite_ref-2" class="reference"><a href="#cite_note-2">[参 2]</a></sup>
2008-06-20 18:41:14 +00:00
</p>
<dl><dt>refs
</dt></dl>
2009-03-31 14:26:40 +00:00
<ol class="references"><li id="cite_note-0"><a href="#cite_ref-0">↑</a> ref a</li>
<li id="cite_note-2"><a href="#cite_ref-2">↑</a> ref c</li></ol>
2008-06-20 18:41:14 +00:00
<dl><dt>notes
</dt></dl>
2009-03-31 14:26:40 +00:00
<ol class="references"><li id="cite_note-1"><a href="#cite_ref-1">↑</a> note b</li></ol>
2008-06-20 18:41:14 +00:00
!! end
2009-07-26 22:15:13 +00:00
!! test
<ref> defined in <references>
!! input
<ref name="foo"/>
<references>
<ref name="foo">BAR</ref>
</references>
!! result
<p><sup id="cite_ref-foo_0-0" class="reference"><a href="#cite_note-foo-0">[1]</a></sup>
</p>
<ol class="references"><li id="cite_note-foo-0"><a href="#cite_ref-foo_0-0">↑</a> BAR</li></ol>
!! end
!! test
<ref> defined in <references> called with #tag
!! input
<ref name="foo"/>
{{#tag:references|
<ref name="foo">BAR</ref>
}}
!! result
<p><sup id="cite_ref-foo_0-0" class="reference"><a href="#cite_note-foo-0">[1]</a></sup>
</p>
<ol class="references"><li id="cite_note-foo-0"><a href="#cite_ref-foo_0-0">↑</a> BAR</li></ol>
!! end
!! test
<ref> defined in <references> error conditions
!! input
<ref name="foo" group="2"/>
<references group="2">
<ref name="foo"/>
<ref name="unused">BAR</ref>
<ref name="foo" group="1">bad group</ref>
<ref>BAR BAR</ref>
</references>
!! result
<p><sup id="cite_ref-foo_0-0" class="reference"><a href="#cite_note-foo-0">[2 1]</a></sup>
</p>
<ol class="references"><li id="cite_note-foo"><a href="#cite_ref-foo_0">↑</a> <strong class="error">Cite error: Invalid <code><ref></code> tag;
no text was provided for refs named <code>foo</code></strong></li></ol>
<p><strong class="error">Cite error: <code><ref></code> tag with name "unused" defined in <code><references></code> is not used in prior text.</strong><br />
<strong class="error">Cite error: <code><ref></code> tag in <code><references></code> has conflicting group attribute "1".</strong><br />
<strong class="error">Cite error: <code><ref></code> tag defined in <code><references></code> has no name attribute.</strong>
</p>
!! end