git-svn-id: https://svn.fournier38.fr/svn/ProgSVN/trunk@5459 bf3deb0d-5f1a-0410-827f-c0cc1f45334c
91 lines
2.1 KiB
PHP
91 lines
2.1 KiB
PHP
<?php
|
|
/** DomFramework - Tests
|
|
* @package domframework
|
|
* @author Dominique Fournier <dominique@fournier38.fr>
|
|
*/
|
|
|
|
/** Test the csrf.php file */
|
|
class test_csrf extends PHPUnit_Framework_TestCase
|
|
{
|
|
public function test_csrf1 ()
|
|
{
|
|
$csrf = new csrf ();
|
|
$res = $csrf->createToken ();
|
|
$GLOBALS["CSRFTEST-Token"] = $res;
|
|
$this->assertSame (30, strlen ($res));
|
|
}
|
|
|
|
public function test_csrf2 ()
|
|
{
|
|
$csrf = new csrf ();
|
|
$res = $csrf->createToken ();
|
|
$this->assertSame (
|
|
strspn ($res,
|
|
"abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ") , strlen ($res));
|
|
}
|
|
|
|
public function test_csrf3 ()
|
|
{
|
|
$csrf = new csrf ();
|
|
$this->setExpectedException ("Exception");
|
|
$res = $csrf->checkToken ("NOT VALID TOKEN");
|
|
}
|
|
|
|
public function test_csrf4 ()
|
|
{
|
|
$csrf = new csrf ();
|
|
$token = $csrf->createToken ();
|
|
$res = $csrf->checkToken ($token);
|
|
$this->assertSame (true, $res);
|
|
}
|
|
|
|
public function test_csrf5 ()
|
|
{
|
|
$csrf = new csrf ();
|
|
$token = $csrf->createToken ();
|
|
$res = $csrf->extendToken ($token);
|
|
$this->assertSame (true, $res);
|
|
}
|
|
|
|
public function test_csrf6 ()
|
|
{
|
|
$csrf = new csrf ();
|
|
$token = $csrf->createToken ();
|
|
$res = $csrf->getToken ();
|
|
$this->assertSame ($token, $res);
|
|
}
|
|
|
|
public function test_csrf7 ()
|
|
{
|
|
$csrf = new csrf ();
|
|
$res = $csrf->getToken ();
|
|
$this->assertSame (30, strlen ($res));
|
|
}
|
|
|
|
public function test_csrf_multiple_1 ()
|
|
{
|
|
$csrf1 = new csrf ();
|
|
$token1 = $csrf1->createToken ();
|
|
$csrf2 = new csrf ();
|
|
$token2 = $csrf2->createToken ();
|
|
$this->assertSame (true,
|
|
$csrf2->checkToken ($token1) && $csrf2->checkToken ($token2));
|
|
}
|
|
|
|
public function test_csrf_multiple_extend_2 ()
|
|
{
|
|
$csrf = new csrf ();
|
|
$res = $csrf->extendToken ($GLOBALS["CSRFTEST-Token"]);
|
|
$this->assertSame (true, $res);
|
|
}
|
|
|
|
public function test_csrf_multiple_get ()
|
|
{
|
|
$csrf1 = new csrf ();
|
|
$token1 = $csrf1->createToken ();
|
|
$csrf2 = new csrf ();
|
|
$token2 = $csrf2->getToken ();
|
|
$this->assertSame ($token1, $token2);
|
|
}
|
|
}
|