xref: /plugin/include/_test/media_linktitle_conversion.test.php (revision 87e04d3606ee131db3c118989c75a23e72fad1d0)
1<?php
2
3if (!defined('DOKU_INC')) die();
4
5/**
6 * Test the conversion of media references in link titles
7 *
8 * @group plugin_include
9 * @group plugins
10 */
11class plugin_include_media_linktitle_conversion_test extends DokuWikiTest {
12    /** @var helper_plugin_include $helper */
13    private $helper;
14
15    public function setUp() {
16        $this->pluginsEnabled[] = 'include';
17        parent::setUp();
18
19        $this->helper = plugin_load('helper', 'include');
20
21        saveWikiText('wiki:included', <<<EOF
22  * [[test|{{dokuwiki.png}}]]
23  * [[#test|{{dokuwiki.png?w=200}}]]
24  * [[doku>test|{{dokuwiki.png?w=300}}]]
25  * [[test|{{https://www.dokuwiki.org/lib/tpl/dokuwiki/images/logo.png}}]]
26EOF
27            , 'Test setup');
28        idx_addPage('wiki:included');
29
30        saveWikiText('test:include', '{{page>..:wiki:included}}', 'Test setup');
31        idx_addPage('test:include');
32    }
33
34    public function testInternalLinkTitleConversion() {
35        $html = p_wiki_xhtml('test:include');
36        $this->assertContains('src="'.ml('wiki:dokuwiki.png').'"', $html);
37    }
38
39    public function testLocalLinkTitleConversion() {
40        $html = p_wiki_xhtml('test:include');
41        $this->assertContains('src="'.ml('wiki:dokuwiki.png', array('w' => '200')).'"', $html);
42    }
43
44    public function testInterWikiLinkTitleConversion() {
45        $html = p_wiki_xhtml('test:include');
46        $this->assertContains('src="'.ml('wiki:dokuwiki.png', array('w' => '300')).'"', $html);
47    }
48
49    public function testExternalMediaNotConverted() {
50        $html = p_wiki_xhtml('test:include');
51        $this->assertContains('src="'.ml('https://www.dokuwiki.org/lib/tpl/dokuwiki/images/logo.png').'"', $html);
52    }
53}
54