mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/ImageMap
synced 2024-11-24 06:13:39 +00:00
d132c60c6e
Bug: T273505 Depends-On: I719a367622b3887cfea3032582a767c2c38d0f87 Change-Id: Ifa957e3b0e437447cdc1a60b2f387440a9ef9a88
243 lines
15 KiB
Plaintext
243 lines
15 KiB
Plaintext
!! Version 2
|
|
# Force the test runner to ensure the extension is loaded
|
|
!! hooks
|
|
imagemap
|
|
!! endhooks
|
|
|
|
!! test
|
|
imagemap test 1
|
|
!! config
|
|
wgParserEnableLegacyMediaDOM=false
|
|
!! wikitext
|
|
<imagemap>
|
|
Image:Foobar.jpg
|
|
</imagemap>
|
|
!! html/php
|
|
<figure class="mw-default-size noresize" typeof="mw:File"><span><img alt="Foobar.jpg" src="http://example.com/images/3/3a/Foobar.jpg" decoding="async" width="1941" height="220" /></span><figcaption></figcaption></figure>
|
|
!! html/parsoid
|
|
<figure class="mw-default-size noresize" typeof="mw:Image mw:Extension/imagemap" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nImage:Foobar.jpg\n"}}'><span><img resource="./File:Foobar.jpg" src="http://example.com/images/3/3a/Foobar.jpg" decoding="async" data-file-width="1941" data-file-height="220" data-file-type="bitmap" height="220" width="1941"/></span><figcaption></figcaption></figure>
|
|
!! end
|
|
|
|
!! test
|
|
imagemap test 1 (legacy)
|
|
!! config
|
|
wgParserEnableLegacyMediaDOM=true
|
|
!! wikitext
|
|
<imagemap>
|
|
Image:Foobar.jpg
|
|
</imagemap>
|
|
!! html/php
|
|
<div class="noresize" style="height: 220px; width: 1941px; "><img alt="Foobar.jpg" src="http://example.com/images/3/3a/Foobar.jpg" decoding="async" width="1941" height="220" /><div style="margin-left: 1921px; margin-top: -20px; text-align: left;"><a href="/wiki/File:Foobar.jpg" title="About this image"><img alt="About this image" src="/extensions/ImageMap/resources/desc-20.png?15600" style="border: none;" /></a></div></div>
|
|
!! html/parsoid
|
|
<figure class="mw-default-size noresize" typeof="mw:Image mw:Extension/imagemap" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nImage:Foobar.jpg\n"}}'><span><img resource="./File:Foobar.jpg" src="http://example.com/images/3/3a/Foobar.jpg" decoding="async" data-file-width="1941" data-file-height="220" data-file-type="bitmap" height="220" width="1941"/></span><figcaption></figcaption></figure>
|
|
!! end
|
|
|
|
!! test
|
|
imagemap test 2
|
|
!! config
|
|
wgParserEnableLegacyMediaDOM=false
|
|
!! wikitext
|
|
<imagemap>
|
|
File:Foobar.jpg
|
|
|
|
poly 10.1 10.9 10 30 -30 15 [[Main Page]]
|
|
</imagemap>
|
|
!! html/php
|
|
<figure class="mw-default-size noresize" typeof="mw:File"><span><img alt="Foobar.jpg" src="http://example.com/images/3/3a/Foobar.jpg" decoding="async" width="1941" height="220" usemap="#ImageMap_79ccc6c89d422b0c" /></span><map name="ImageMap_79ccc6c89d422b0c"><area href="/wiki/Main_Page" shape="poly" coords="10,11,10,30,-30,15" alt="Main Page" title="Main Page" /></map><figcaption></figcaption></figure>
|
|
!! html/parsoid
|
|
<figure class="mw-default-size noresize" typeof="mw:Image mw:Extension/imagemap" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nFile:Foobar.jpg\n\npoly 10.1 10.9 10 30 -30 15 [[Main Page]]\n"}}'><span><img resource="./File:Foobar.jpg" src="http://example.com/images/3/3a/Foobar.jpg" decoding="async" data-file-width="1941" data-file-height="220" data-file-type="bitmap" height="220" width="1941" usemap="#ImageMap_02c94d3ca4bfc187"/></span><map name="ImageMap_02c94d3ca4bfc187"><area href="./Main_Page" shape="poly" coords="10,11,10,30,-30,15"/></map><figcaption></figcaption></figure>
|
|
!! end
|
|
|
|
!! test
|
|
imagemap test 2 (legacy)
|
|
!! config
|
|
wgParserEnableLegacyMediaDOM=true
|
|
!! wikitext
|
|
<imagemap>
|
|
File:Foobar.jpg
|
|
|
|
poly 10.1 10.9 10 30 -30 15 [[Main Page]]
|
|
</imagemap>
|
|
!! html/php
|
|
<div class="noresize" style="height: 220px; width: 1941px; "><map name="ImageMap_79ccc6c89d422b0c"><area href="/wiki/Main_Page" shape="poly" coords="10,11,10,30,-30,15" alt="Main Page" title="Main Page" /></map><img alt="Foobar.jpg" src="http://example.com/images/3/3a/Foobar.jpg" decoding="async" width="1941" height="220" usemap="#ImageMap_79ccc6c89d422b0c" /><div style="margin-left: 1921px; margin-top: -20px; text-align: left;"><a href="/wiki/File:Foobar.jpg" title="About this image"><img alt="About this image" src="/extensions/ImageMap/resources/desc-20.png?15600" style="border: none;" /></a></div></div>
|
|
!! html/parsoid
|
|
<figure class="mw-default-size noresize" typeof="mw:Image mw:Extension/imagemap" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nFile:Foobar.jpg\n\npoly 10.1 10.9 10 30 -30 15 [[Main Page]]\n"}}'><span><img resource="./File:Foobar.jpg" src="http://example.com/images/3/3a/Foobar.jpg" decoding="async" data-file-width="1941" data-file-height="220" data-file-type="bitmap" height="220" width="1941" usemap="#ImageMap_02c94d3ca4bfc187"/></span><map name="ImageMap_02c94d3ca4bfc187"><area href="./Main_Page" shape="poly" coords="10,11,10,30,-30,15"/></map><figcaption></figcaption></figure>
|
|
!! end
|
|
|
|
!! test
|
|
imagemap test 3
|
|
!! config
|
|
wgParserEnableLegacyMediaDOM=false
|
|
!! wikitext
|
|
<imagemap>
|
|
File:Foobar.jpg|150px|alt=Alt text
|
|
default [[Main Page|Go to main page]]
|
|
</imagemap>
|
|
!! html/php
|
|
<figure class="noresize" typeof="mw:File"><a href="/wiki/Main_Page" title="Go to main page"><img alt="Alt text" src="http://example.com/images/thumb/3/3a/Foobar.jpg/150px-Foobar.jpg" decoding="async" width="150" height="17" srcset="http://example.com/images/thumb/3/3a/Foobar.jpg/225px-Foobar.jpg 1.5x, http://example.com/images/thumb/3/3a/Foobar.jpg/300px-Foobar.jpg 2x" /></a><figcaption></figcaption></figure>
|
|
!! html/parsoid
|
|
<figure typeof="mw:Image mw:Extension/imagemap" class="noresize" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nFile:Foobar.jpg|150px|alt=Alt text\ndefault [[Main Page|Go to main page]]\n"}}'><a href="./Main_Page" title="Go to main page"><img alt="Alt text" resource="./File:Foobar.jpg" src="http://example.com/images/thumb/3/3a/Foobar.jpg/150px-Foobar.jpg" decoding="async" data-file-width="1941" data-file-height="220" data-file-type="bitmap" height="17" width="150" srcset="http://example.com/images/thumb/3/3a/Foobar.jpg/225px-Foobar.jpg 1.5x, http://example.com/images/thumb/3/3a/Foobar.jpg/300px-Foobar.jpg 2x"/></a><figcaption></figcaption></figure>
|
|
!! end
|
|
|
|
!! test
|
|
imagemap test 3 (legacy)
|
|
!! config
|
|
wgParserEnableLegacyMediaDOM=true
|
|
!! wikitext
|
|
<imagemap>
|
|
File:Foobar.jpg|150px|alt=Alt text
|
|
default [[Main Page|Go to main page]]
|
|
</imagemap>
|
|
!! html/php
|
|
<div class="noresize" style="height: 17px; width: 150px; "><a href="/wiki/Main_Page" title="Go to main page"><img alt="Alt text" src="http://example.com/images/thumb/3/3a/Foobar.jpg/150px-Foobar.jpg" decoding="async" width="150" height="17" srcset="http://example.com/images/thumb/3/3a/Foobar.jpg/225px-Foobar.jpg 1.5x, http://example.com/images/thumb/3/3a/Foobar.jpg/300px-Foobar.jpg 2x" /></a><div style="margin-left: 130px; margin-top: -20px; text-align: left;"><a href="/wiki/File:Foobar.jpg" title="About this image"><img alt="About this image" src="/extensions/ImageMap/resources/desc-20.png?15600" style="border: none;" /></a></div></div>
|
|
!! html/parsoid
|
|
<figure typeof="mw:Image mw:Extension/imagemap" class="noresize" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nFile:Foobar.jpg|150px|alt=Alt text\ndefault [[Main Page|Go to main page]]\n"}}'><a href="./Main_Page" title="Go to main page"><img alt="Alt text" resource="./File:Foobar.jpg" src="http://example.com/images/thumb/3/3a/Foobar.jpg/150px-Foobar.jpg" decoding="async" data-file-width="1941" data-file-height="220" data-file-type="bitmap" height="17" width="150" srcset="http://example.com/images/thumb/3/3a/Foobar.jpg/225px-Foobar.jpg 1.5x, http://example.com/images/thumb/3/3a/Foobar.jpg/300px-Foobar.jpg 2x"/></a><figcaption></figcaption></figure>
|
|
!! end
|
|
|
|
!! test
|
|
Empty imagemap
|
|
!! wikitext
|
|
<imagemap>
|
|
</imagemap>
|
|
!! html/php
|
|
<p class="error">Error: Must specify an image in the first line.</p>
|
|
!! html/parsoid
|
|
<p><span typeof="mw:Extension/imagemap mw:Error" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\n"},"errors":[{"key":"imagemap_no_image"}]}'>Error: imagemap_no_image</span></p>
|
|
!! end
|
|
|
|
!! test
|
|
Invalid image title
|
|
!! wikitext
|
|
<imagemap>
|
|
[[x|xx]]]]
|
|
</imagemap>
|
|
!! html/php
|
|
<p class="error">Error: Must specify an image in the first line.</p>
|
|
!! html/parsoid
|
|
<p><span typeof="mw:Extension/imagemap mw:Error" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\n[[x|xx]]]]\n"},"errors":[{"key":"imagemap_no_image"}]}'>Error: imagemap_no_image</span></p>
|
|
!! end
|
|
|
|
!! test
|
|
Image does not exist
|
|
!! wikitext
|
|
<imagemap>
|
|
File:Nopenopenope.jpg
|
|
</imagemap>
|
|
!! html/php
|
|
<p class="error">Error: Image is invalid or non-existent.</p>
|
|
!! html/parsoid
|
|
<p><span typeof="mw:Extension/imagemap mw:Error" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nFile:Nopenopenope.jpg\n"},"errors":[{"key":"imagemap_invalid_image"}]}'>Error: imagemap_invalid_image</span></p>
|
|
!! end
|
|
|
|
!! test
|
|
Invalid description type
|
|
!! wikitext
|
|
<imagemap>
|
|
Image:Foobar.jpg
|
|
desc nopenopenope
|
|
</imagemap>
|
|
!! html/php
|
|
<p class="error">Error: Invalid desc specification, must be one of: <code>top-right, bottom-right, bottom-left, top-left, none</code>.</p>
|
|
!! html/parsoid
|
|
<p><span typeof="mw:Extension/imagemap mw:Error" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nImage:Foobar.jpg\ndesc nopenopenope\n"},"errors":[{"key":"imagemap_invalid_desc","params":["top-right, bottom-right, bottom-left, top-left, none"]}]}'>Error: imagemap_invalid_desc</span></p>
|
|
!! end
|
|
|
|
!! test
|
|
Empty description type
|
|
!! wikitext
|
|
<imagemap>
|
|
Image:Foobar.jpg
|
|
desc
|
|
</imagemap>
|
|
!! html/php
|
|
<p class="error">Error: Invalid desc specification, must be one of: <code>top-right, bottom-right, bottom-left, top-left, none</code>.</p>
|
|
!! html/parsoid
|
|
<p><span typeof="mw:Extension/imagemap mw:Error" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nImage:Foobar.jpg\ndesc\n"},"errors":[{"key":"imagemap_invalid_desc","params":["top-right, bottom-right, bottom-left, top-left, none"]}]}'>Error: imagemap_invalid_desc</span></p>
|
|
!! end
|
|
|
|
!! test
|
|
No link title
|
|
!! wikitext
|
|
<imagemap>
|
|
File:Foobar.jpg
|
|
123
|
|
</imagemap>
|
|
!! html/php
|
|
<p class="error">Error: No valid link was found at the end of line 3.</p>
|
|
!! html/parsoid
|
|
<p><span typeof="mw:Extension/imagemap mw:Error" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nFile:Foobar.jpg\n123\n"},"errors":[{"key":"imagemap_no_link","params":[3]}]}'>Error: imagemap_no_link</span></p>
|
|
!! end
|
|
|
|
!! test
|
|
Invalid link title
|
|
!! wikitext
|
|
<imagemap>
|
|
File:Foobar.jpg
|
|
[[<]]
|
|
</imagemap>
|
|
!! html/php
|
|
<p class="error">Error: Invalid title in link at line 3.</p>
|
|
!! html/parsoid
|
|
<p><span typeof="mw:Extension/imagemap mw:Error" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nFile:Foobar.jpg\n[[<]]\n"},"errors":[{"key":"imagemap_invalid_title","params":[3]}]}'>Error: imagemap_invalid_title</span></p>
|
|
!! end
|
|
|
|
## FIXME: Note the difference in the link alt
|
|
!! test
|
|
Link with wikitext syntax in content
|
|
!! config
|
|
wgParserEnableLegacyMediaDOM=false
|
|
!! wikitext
|
|
<imagemap>
|
|
File:Foobar.jpg|150px|alt=Alt text
|
|
default [[Main Page|Go to ''main page'']]
|
|
</imagemap>
|
|
!! html/php
|
|
<figure class="noresize" typeof="mw:File"><a href="/wiki/Main_Page" title="Go to ''main page''"><img alt="Alt text" src="http://example.com/images/thumb/3/3a/Foobar.jpg/150px-Foobar.jpg" decoding="async" width="150" height="17" srcset="http://example.com/images/thumb/3/3a/Foobar.jpg/225px-Foobar.jpg 1.5x, http://example.com/images/thumb/3/3a/Foobar.jpg/300px-Foobar.jpg 2x" /></a><figcaption></figcaption></figure>
|
|
!! html/parsoid
|
|
<figure typeof="mw:Image mw:Extension/imagemap" class="noresize" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nFile:Foobar.jpg|150px|alt=Alt text\ndefault [[Main Page|Go to ''main page'']]\n"}}'><a href="./Main_Page" title="Go to main page"><img alt="Alt text" resource="./File:Foobar.jpg" src="http://example.com/images/thumb/3/3a/Foobar.jpg/150px-Foobar.jpg" decoding="async" data-file-width="1941" data-file-height="220" data-file-type="bitmap" height="17" width="150" srcset="http://example.com/images/thumb/3/3a/Foobar.jpg/225px-Foobar.jpg 1.5x, http://example.com/images/thumb/3/3a/Foobar.jpg/300px-Foobar.jpg 2x"/></a><figcaption></figcaption></figure>
|
|
!! end
|
|
|
|
## FIXME: Note the difference in the link alt
|
|
!! test
|
|
Link with wikitext syntax in content (legacy)
|
|
!! config
|
|
wgParserEnableLegacyMediaDOM=true
|
|
!! wikitext
|
|
<imagemap>
|
|
File:Foobar.jpg|150px|alt=Alt text
|
|
default [[Main Page|Go to ''main page'']]
|
|
</imagemap>
|
|
!! html/php
|
|
<div class="noresize" style="height: 17px; width: 150px; "><a href="/wiki/Main_Page" title="Go to ''main page''"><img alt="Alt text" src="http://example.com/images/thumb/3/3a/Foobar.jpg/150px-Foobar.jpg" decoding="async" width="150" height="17" srcset="http://example.com/images/thumb/3/3a/Foobar.jpg/225px-Foobar.jpg 1.5x, http://example.com/images/thumb/3/3a/Foobar.jpg/300px-Foobar.jpg 2x" /></a><div style="margin-left: 130px; margin-top: -20px; text-align: left;"><a href="/wiki/File:Foobar.jpg" title="About this image"><img alt="About this image" src="/extensions/ImageMap/resources/desc-20.png?15600" style="border: none;" /></a></div></div>
|
|
!! html/parsoid
|
|
<figure typeof="mw:Image mw:Extension/imagemap" class="noresize" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nFile:Foobar.jpg|150px|alt=Alt text\ndefault [[Main Page|Go to ''main page'']]\n"}}'><a href="./Main_Page" title="Go to main page"><img alt="Alt text" resource="./File:Foobar.jpg" src="http://example.com/images/thumb/3/3a/Foobar.jpg/150px-Foobar.jpg" decoding="async" data-file-width="1941" data-file-height="220" data-file-type="bitmap" height="17" width="150" srcset="http://example.com/images/thumb/3/3a/Foobar.jpg/225px-Foobar.jpg 1.5x, http://example.com/images/thumb/3/3a/Foobar.jpg/300px-Foobar.jpg 2x"/></a><figcaption></figcaption></figure>
|
|
!! end
|
|
|
|
!! test
|
|
File with link= option
|
|
!! config
|
|
wgParserEnableLegacyMediaDOM=false
|
|
!! wikitext
|
|
<imagemap>
|
|
File:Foobar.jpg|link=|Hi ho
|
|
</imagemap>
|
|
!! html/php
|
|
<figure class="mw-default-size noresize" typeof="mw:File"><span title="Hi ho"><img alt="Hi ho" src="http://example.com/images/3/3a/Foobar.jpg" decoding="async" width="1941" height="220" /></span><figcaption>Hi ho</figcaption></figure>
|
|
!! html/parsoid
|
|
<figure class="mw-default-size noresize" typeof="mw:Image mw:Extension/imagemap" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nFile:Foobar.jpg|link=|Hi ho\n"}}'><span><img resource="./File:Foobar.jpg" src="http://example.com/images/3/3a/Foobar.jpg" decoding="async" data-file-width="1941" data-file-height="220" data-file-type="bitmap" height="220" width="1941"/></span><figcaption>Hi ho</figcaption></figure>
|
|
!! end
|
|
|
|
!! test
|
|
File with link= option (legacy)
|
|
!! config
|
|
wgParserEnableLegacyMediaDOM=true
|
|
!! wikitext
|
|
<imagemap>
|
|
File:Foobar.jpg|link=|Hi ho
|
|
</imagemap>
|
|
!! html/php
|
|
<div class="noresize" style="height: 220px; width: 1941px; "><img alt="Hi ho" src="http://example.com/images/3/3a/Foobar.jpg" decoding="async" title="Hi ho" width="1941" height="220" /><div style="margin-left: 1921px; margin-top: -20px; text-align: left;"><a href="/wiki/File:Foobar.jpg" title="About this image"><img alt="About this image" src="/extensions/ImageMap/resources/desc-20.png?15600" style="border: none;" /></a></div></div>
|
|
!! html/parsoid
|
|
<figure class="mw-default-size noresize" typeof="mw:Image mw:Extension/imagemap" about="#mwt2" data-mw='{"name":"imagemap","attrs":{},"body":{"extsrc":"\nFile:Foobar.jpg|link=|Hi ho\n"}}'><span><img resource="./File:Foobar.jpg" src="http://example.com/images/3/3a/Foobar.jpg" decoding="async" data-file-width="1941" data-file-height="220" data-file-type="bitmap" height="220" width="1941"/></span><figcaption>Hi ho</figcaption></figure>
|
|
!! end
|