xref: /plugin/include/_test/locallink_conversion.test.php (revision 02c330c705a38cf5fd8299f261dfdd96c3f1b813)
17026615fSMichael Hamann<?php
27026615fSMichael Hamann
37026615fSMichael Hamannif (!defined('DOKU_INC')) die();
47026615fSMichael Hamann
57026615fSMichael Hamann/**
67026615fSMichael Hamann * Test the conversion of local links to internal links if the page hasn't been fully included
7c76c7b12SAndreas Gohr *
8c76c7b12SAndreas Gohr * @group plugin_include
9c76c7b12SAndreas Gohr * @group plugins
107026615fSMichael Hamann */
117026615fSMichael Hamannclass plugin_include_locallink_conversion_test extends DokuWikiTest {
127026615fSMichael Hamann    /** @var helper_plugin_include $helper */
137026615fSMichael Hamann    private $helper;
147026615fSMichael Hamann
1569781840SAnna Dabrowska    public function setUp() : void
1669781840SAnna Dabrowska    {
177026615fSMichael Hamann        $this->pluginsEnabled[] = 'include';
187026615fSMichael Hamann        parent::setUp();
197026615fSMichael Hamann
207026615fSMichael Hamann        $this->helper = plugin_load('helper', 'include');
217026615fSMichael Hamann
227026615fSMichael Hamann        saveWikiText('included', 'Example content with link [[#jump]]', 'Test setup');
237026615fSMichael Hamann        idx_addPage('test:included');
247026615fSMichael Hamann
257026615fSMichael Hamann        saveWikiText('test:includefull', '{{page>..:included}}', 'Test setup');
267026615fSMichael Hamann        idx_addPage('test:includefull');
277026615fSMichael Hamann
287026615fSMichael Hamann        saveWikiText('test:includefirst', '{{page>..:included&firstseconly}}', 'Test setup');
297026615fSMichael Hamann        idx_addPage('test:includefirst');
307026615fSMichael Hamann    }
317026615fSMichael Hamann
327026615fSMichael Hamann    public function testLocalConverted() {
337026615fSMichael Hamann        $html = p_wiki_xhtml('test:includefirst');
34*02c330c7SMichael Hamann        $this->assertStringContainsString('href="'.wl('included').'#jump"', $html);
35*02c330c7SMichael Hamann        $this->assertStringNotContainsString('href="#jump"', $html);
367026615fSMichael Hamann    }
377026615fSMichael Hamann
387026615fSMichael Hamann    public function testLocalExistsIfIncluded() {
397026615fSMichael Hamann        $html = p_wiki_xhtml('test:includefull');
40*02c330c7SMichael Hamann        $this->assertStringContainsString('href="#jump"', $html);
417026615fSMichael Hamann    }
427026615fSMichael Hamann}
43