xref: /plugin/include/_test/safeindex.test.php (revision 69781840d34fa6ae25dd31730d4777a7af46f442)
1b5295d80SMichael Hamann<?php
2c76c7b12SAndreas Gohr/*
3c76c7b12SAndreas Gohr * @group plugin_include
4c76c7b12SAndreas Gohr * @group plugins
5c76c7b12SAndreas Gohr */
6b5295d80SMichael Hamannclass plugin_include_safeindex_test extends DokuWikiTest {
7*69781840SAnna Dabrowska    public function setUp() : void
8*69781840SAnna Dabrowska    {
9b5295d80SMichael Hamann        $this->pluginsEnabled[] = 'include';
10*69781840SAnna Dabrowska        parent::setUp();
11b5295d80SMichael Hamann    }
12b5295d80SMichael Hamann
13b5295d80SMichael Hamann    public function test_safeindex() {
14b5295d80SMichael Hamann        global $conf;
15b5295d80SMichael Hamann        global $AUTH_ACL;
16b5295d80SMichael Hamann        $conf['superuser'] = 'john';
17b5295d80SMichael Hamann        $conf['useacl']    = 1;
18b5295d80SMichael Hamann
19b5295d80SMichael Hamann        $AUTH_ACL = array(
20b5295d80SMichael Hamann            '*           @ALL           0',
21b5295d80SMichael Hamann            '*           @user          8',
22b5295d80SMichael Hamann            'public      @ALL           1',
23b5295d80SMichael Hamann        );
24b5295d80SMichael Hamann
25b5295d80SMichael Hamann        $_SERVER['REMOTE_USER'] = 'john';
26b5295d80SMichael Hamann
27b5295d80SMichael Hamann        saveWikiText('parent', "{{page>child}}\n\n[[public_link]]\n\n{{page>public}}", 'Test parent created');
28b5295d80SMichael Hamann        saveWikiText('child', "[[foo:private]]", 'Test child created');
29b5295d80SMichael Hamann        saveWikiText('public', "[[foo:public]]", 'Public page created');
30b5295d80SMichael Hamann
31b5295d80SMichael Hamann        idx_addPage('parent');
32b5295d80SMichael Hamann        idx_addPage('child');
33b5295d80SMichael Hamann        idx_addPage('public');
34b5295d80SMichael Hamann
35b5295d80SMichael Hamann        $this->assertEquals(array('parent', 'public'), ft_backlinks('foo:public'));
36b5295d80SMichael Hamann        $this->assertEquals(array('child'), ft_backlinks('foo:private'));
37b5295d80SMichael Hamann        $this->assertEquals(array('parent'), ft_backlinks('public_link'));
38b5295d80SMichael Hamann    }
39b5295d80SMichael Hamann}
40b5295d80SMichael Hamann
41