diff options
author | Michal Rezler <rezlemic@fel.cvut.cz> | 2011-03-23 10:39:45 +0100 |
---|---|---|
committer | Michal Rezler <rezlemic@fel.cvut.cz> | 2011-03-23 10:39:45 +0100 |
commit | 35838d22a57707952f630eaf9f9e9ab4c6c3cfb0 (patch) | |
tree | 3603e2e56314af40a4b7922e14e52c0bc06f6f9d /_test/cases/inc/auth_admincheck.test.php | |
parent | c4bb7947fcb2d4a5e5f8a15d9e3bbec333e44e13 (diff) | |
parent | ee1214abb2c14cf0f86ff6d9a5b49536c6b01e18 (diff) | |
download | rpg-35838d22a57707952f630eaf9f9e9ab4c6c3cfb0.tar.gz rpg-35838d22a57707952f630eaf9f9e9ab4c6c3cfb0.tar.bz2 |
jQuery rewrite branch merged into master branch of whole project
Diffstat (limited to '_test/cases/inc/auth_admincheck.test.php')
-rw-r--r-- | _test/cases/inc/auth_admincheck.test.php | 90 |
1 files changed, 84 insertions, 6 deletions
diff --git a/_test/cases/inc/auth_admincheck.test.php b/_test/cases/inc/auth_admincheck.test.php index f14d6369e..a71c8801a 100644 --- a/_test/cases/inc/auth_admincheck.test.php +++ b/_test/cases/inc/auth_admincheck.test.php @@ -3,20 +3,47 @@ require_once DOKU_INC.'inc/init.php'; require_once DOKU_INC.'inc/auth.php'; +class auth_admin_test_AuthInSensitive extends auth_basic { + function isCaseSensitive(){ + return false; + } +} + class auth_admin_test extends UnitTestCase { + private $oldauth; + + function setup() { + global $auth; + $this->oldauth = $auth; + parent::setup(); + } + + function setSensitive() { + global $auth; + $auth = new auth_basic; + } + + function setInSensitive() { + global $auth; + $auth = new auth_admin_test_AuthInSensitive; + } + function teardown() { + global $auth; global $conf; global $AUTH_ACL; unset($conf); unset($AUTH_ACL); - + $auth = $this->oldauth; + parent::teardown(); } - function test_ismanager(){ + function test_ismanager_insensitive(){ + $this->setInSensitive(); global $conf; - $conf['superuser'] = 'john,@admin'; - $conf['manager'] = 'john,@managers,doe'; + $conf['superuser'] = 'john,@admin,@Mötly Görls, Dörte'; + $conf['manager'] = 'john,@managers,doe, @Mötly Böys, Dänny'; // anonymous user $this->assertEqual(auth_ismanager('jill', null,false), false); @@ -25,12 +52,19 @@ class auth_admin_test extends UnitTestCase { $this->assertEqual(auth_ismanager('john', null,false), true); $this->assertEqual(auth_ismanager('doe', null,false), true); + $this->assertEqual(auth_ismanager('dörte', null,false), true); + $this->assertEqual(auth_ismanager('dänny', 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); + + $this->assertEqual(auth_ismanager('jill', array('mötly görls'),false), true); + $this->assertEqual(auth_ismanager('jill', array('mötly böys'),false), true); } - function test_isadmin(){ + function test_isadmin_insensitive(){ + $this->setInSensitive(); global $conf; $conf['superuser'] = 'john,@admin,doe,@roots'; @@ -48,6 +82,50 @@ class auth_admin_test extends UnitTestCase { $this->assertEqual(auth_ismanager('doe', array('admin'),true), true); } + function test_ismanager_sensitive(){ + $this->setSensitive(); + global $conf; + $conf['superuser'] = 'john,@admin,@Mötly Görls, Dörte'; + $conf['manager'] = 'john,@managers,doe, @Mötly Böys, Dänny'; + + // 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); + + $this->assertEqual(auth_ismanager('dörte', null,false), false); + $this->assertEqual(auth_ismanager('dänny', null,false), false); + + // admin or manager groups + $this->assertEqual(auth_ismanager('jill', array('admin'),false), true); + $this->assertEqual(auth_ismanager('jill', array('managers'),false), true); + + $this->assertEqual(auth_ismanager('jill', array('mötly görls'),false), false); + $this->assertEqual(auth_ismanager('jill', array('mötly böys'),false), false); + } + + function test_isadmin_sensitive(){ + $this->setSensitive(); + 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), false); + + // 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); + $this->assertEqual(auth_ismanager('Doe', array('admin'),true), true); + } + } -//Setup VIM: ex: et ts=4 enc=utf-8 : +//Setup VIM: ex: et ts=4 : |