xref: /plugin/include/_test/pagemove_support.test.php (revision 12d9bd9e7a42ec95c54fc0c60430b137a5170a85)
1*12d9bd9eSMichael Hamann<?php
2*12d9bd9eSMichael Hamann
3*12d9bd9eSMichael Hamann/**
4*12d9bd9eSMichael Hamann * Tests the editx support for adapting the syntax of the include plugin
5*12d9bd9eSMichael Hamann */
6*12d9bd9eSMichael Hamannclass plugin_include_pagemove_support_test extends DokuWikiTest {
7*12d9bd9eSMichael Hamann    public function setup() {
8*12d9bd9eSMichael Hamann        $this->pluginsEnabled[] = 'pagemove';
9*12d9bd9eSMichael Hamann        $this->pluginsEnabled[] = 'include';
10*12d9bd9eSMichael Hamann        parent::setup();
11*12d9bd9eSMichael Hamann    }
12*12d9bd9eSMichael Hamann
13*12d9bd9eSMichael Hamann    public function test_relative_include() {
14*12d9bd9eSMichael Hamann        global $ID;
15*12d9bd9eSMichael Hamann        /** @var $pagemove helper_plugin_pagemove */
16*12d9bd9eSMichael Hamann        $pagemove = plugin_load('helper', 'pagemove');
17*12d9bd9eSMichael Hamann        if (!$pagemove) return; // disable the test when pagemove is not installed
18*12d9bd9eSMichael Hamann        saveWikiText('editx', '{{page>start#start}} %%{{page>start}}%% {{section>wiki:syntax#tables&nofooter}} {{page>:}} {{section>test:start#test}}', 'Testcase created');
19*12d9bd9eSMichael Hamann        idx_addPage('editx');
20*12d9bd9eSMichael Hamann        $ID = 'editx';
21*12d9bd9eSMichael Hamann        $opts['ns']      = '';
22*12d9bd9eSMichael Hamann        $opts['newname'] = 'editx';
23*12d9bd9eSMichael Hamann        $opts['newns']   = 'test';
24*12d9bd9eSMichael Hamann        $pagemove->move_page($opts);
25*12d9bd9eSMichael Hamann        $this->assertEquals('{{page>:start#start}} %%{{page>start}}%% {{section>wiki:syntax#tables&nofooter}} {{page>:}} {{section>test:start#test}}',rawWiki('test:editx'));
26*12d9bd9eSMichael Hamann    }
27*12d9bd9eSMichael Hamann
28*12d9bd9eSMichael Hamann    public function test_rename() {
29*12d9bd9eSMichael Hamann        global $ID;
30*12d9bd9eSMichael Hamann        /** @var $pagemove helper_plugin_pagemove */
31*12d9bd9eSMichael Hamann        $pagemove = plugin_load('helper', 'pagemove');
32*12d9bd9eSMichael Hamann        if (!$pagemove) return; // disable the test when pagemove is not installed
33*12d9bd9eSMichael Hamann        saveWikiText('editx', 'Page to rename', 'Testcase create');
34*12d9bd9eSMichael Hamann        saveWikiText('links', '{{section>links#foo}} {{page>editx}} {{page>:eDitX&nofooter}} {{section>editx#test}} {{page>editx&nofooter}}', 'Testcase created');
35*12d9bd9eSMichael Hamann        idx_addPage('editx');
36*12d9bd9eSMichael Hamann        idx_addPage('links');
37*12d9bd9eSMichael Hamann
38*12d9bd9eSMichael Hamann        $ID = 'editx';
39*12d9bd9eSMichael Hamann        $opts['ns']      = '';
40*12d9bd9eSMichael Hamann        $opts['newname'] = 'edit';
41*12d9bd9eSMichael Hamann        $opts['newns']   = 'test';
42*12d9bd9eSMichael Hamann        $pagemove->move_page($opts);
43*12d9bd9eSMichael Hamann        $this->assertEquals('{{section>links#foo}} {{page>test:edit}} {{page>test:edit&nofooter}} {{section>test:edit#test}} {{page>test:edit&nofooter}}', rawWiki('links'));
44*12d9bd9eSMichael Hamann    }
45*12d9bd9eSMichael Hamann}