xref: /plugin/include/_test/media_linktitle_conversion.test.php (revision c76c7b123fd75386fba2a2655cc9efce4e8c0239)
18b00ba47SMichael Hamann<?php
28b00ba47SMichael Hamann
38b00ba47SMichael Hamannif (!defined('DOKU_INC')) die();
48b00ba47SMichael Hamann
58b00ba47SMichael Hamann/**
68b00ba47SMichael Hamann * Test the conversion of media references in link titles
7*c76c7b12SAndreas Gohr *
8*c76c7b12SAndreas Gohr * @group plugin_include
9*c76c7b12SAndreas Gohr * @group plugins
108b00ba47SMichael Hamann */
118b00ba47SMichael Hamannclass plugin_include_media_linktitle_conversion_test extends DokuWikiTest {
128b00ba47SMichael Hamann    /** @var helper_plugin_include $helper */
138b00ba47SMichael Hamann    private $helper;
148b00ba47SMichael Hamann
158b00ba47SMichael Hamann    public function setUp() {
168b00ba47SMichael Hamann        $this->pluginsEnabled[] = 'include';
178b00ba47SMichael Hamann        parent::setUp();
188b00ba47SMichael Hamann
198b00ba47SMichael Hamann        $this->helper = plugin_load('helper', 'include');
208b00ba47SMichael Hamann
218b00ba47SMichael Hamann        saveWikiText('wiki:included', <<<EOF
228b00ba47SMichael Hamann  * [[test|{{dokuwiki.png}}]]
238b00ba47SMichael Hamann  * [[#test|{{dokuwiki.png?w=200}}]]
248b00ba47SMichael Hamann  * [[doku>test|{{dokuwiki.png?w=300}}]]
250c3e533aSMichael Hamann  * [[test|{{https://www.dokuwiki.org/lib/tpl/dokuwiki/images/logo.png}}]]
268b00ba47SMichael HamannEOF
278b00ba47SMichael Hamann            , 'Test setup');
288b00ba47SMichael Hamann        idx_addPage('wiki:included');
298b00ba47SMichael Hamann
308b00ba47SMichael Hamann        saveWikiText('test:include', '{{page>..:wiki:included}}', 'Test setup');
318b00ba47SMichael Hamann        idx_addPage('test:include');
328b00ba47SMichael Hamann    }
338b00ba47SMichael Hamann
348b00ba47SMichael Hamann    public function testInternalLinkTitleConversion() {
358b00ba47SMichael Hamann        $html = p_wiki_xhtml('test:include');
368b00ba47SMichael Hamann        $this->assertContains('src="'.ml('wiki:dokuwiki.png').'"', $html);
378b00ba47SMichael Hamann    }
388b00ba47SMichael Hamann
398b00ba47SMichael Hamann    public function testLocalLinkTitleConversion() {
408b00ba47SMichael Hamann        $html = p_wiki_xhtml('test:include');
418b00ba47SMichael Hamann        $this->assertContains('src="'.ml('wiki:dokuwiki.png', array('w' => '200')).'"', $html);
428b00ba47SMichael Hamann    }
438b00ba47SMichael Hamann
448b00ba47SMichael Hamann    public function testInterWikiLinkTitleConversion() {
458b00ba47SMichael Hamann        $html = p_wiki_xhtml('test:include');
468b00ba47SMichael Hamann        $this->assertContains('src="'.ml('wiki:dokuwiki.png', array('w' => '300')).'"', $html);
478b00ba47SMichael Hamann    }
480c3e533aSMichael Hamann
490c3e533aSMichael Hamann    public function testExternalMediaNotConverted() {
500c3e533aSMichael Hamann        $html = p_wiki_xhtml('test:include');
510c3e533aSMichael Hamann        $this->assertContains('src="'.ml('https://www.dokuwiki.org/lib/tpl/dokuwiki/images/logo.png').'"', $html);
520c3e533aSMichael Hamann    }
538b00ba47SMichael Hamann}
54