summaryrefslogtreecommitdiff
path: root/_test/cases/inc/auth_admincheck.test.php
blob: b21c2fe2731335c41d2bdbb28a3d9171f6241aa4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<?php

require_once DOKU_INC.'inc/init.php';
require_once DOKU_INC.'inc/auth.php';

class auth_admin_test extends UnitTestCase {

    function teardown() {
        global $conf;
        global $AUTH_ACL;
        unset($conf);
        unset($AUTH_ACL);

    }

    function test_ismanager(){
        global $conf;
        $conf['superuser'] = 'john,@admin';
        $conf['manager'] = 'john,@managers,doe';

        // anonymous user
        $this->assertEqual(auth_ismanager('jill', null,false), false);

        // admin or manager users
        $this->assertEqual(auth_ismanager('john', null,false), true);
        $this->assertEqual(auth_ismanager('doe',  null,false), true);

        // admin or manager groups
        $this->assertEqual(auth_ismanager('jill', array('admin'),false), true);
        $this->assertEqual(auth_ismanager('jill', array('managers'),false), true);
    }

    function test_isadmin(){
        global $conf;
        $conf['superuser'] = 'john,@admin,doe,@roots';

        // anonymous user
        $this->assertEqual(auth_ismanager('jill', null,true), false);

        // admin user
        $this->assertEqual(auth_ismanager('john', null,true), true);
        $this->assertEqual(auth_ismanager('doe',  null,true), true);

        // admin groups
        $this->assertEqual(auth_ismanager('jill', array('admin'),true), true);
        $this->assertEqual(auth_ismanager('jill', array('roots'),true), true);
        $this->assertEqual(auth_ismanager('john', array('admin'),true), true);
        $this->assertEqual(auth_ismanager('doe',  array('admin'),true), true);
    }

}

//Setup VIM: ex: et ts=4 :