X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=tests%2FUtilsTest.php;h=5175dde030219265402807c635c309fdaf3047e5;hb=4d30975a06354c5a01d2dfdfc5441e160ef4073e;hp=bbba99f2b686bfc6f36f7480cfb2a0a15b2881d1;hpb=4a5827ff5adadcd8c1ef9231e485f77c0c376c03;p=github%2Fshaarli%2FShaarli.git diff --git a/tests/UtilsTest.php b/tests/UtilsTest.php old mode 100644 new mode 100755 index bbba99f2..5175dde0 --- a/tests/UtilsTest.php +++ b/tests/UtilsTest.php @@ -74,5 +74,98 @@ class UtilsTest extends PHPUnit_Framework_TestCase $this->assertTrue(endsWith('å!ùµ', 'ùµ', false)); $this->assertTrue(endsWith('µ$åù', 'åù', true)); } + + /** + * Check valid date strings, according to a DateTime format + */ + public function testCheckValidDateFormat() + { + $this->assertTrue(checkDateFormat('Ymd', '20150627')); + $this->assertTrue(checkDateFormat('Y-m-d', '2015-06-27')); + } + + /** + * Check erroneous date strings, according to a DateTime format + */ + public function testCheckInvalidDateFormat() + { + $this->assertFalse(checkDateFormat('Ymd', '2015')); + $this->assertFalse(checkDateFormat('Y-m-d', '2015-06')); + $this->assertFalse(checkDateFormat('Ymd', 'DeLorean')); + } + + /** + * Test generate location with valid data. + */ + public function testGenerateLocation() { + $ref = 'http://localhost/?test'; + $this->assertEquals($ref, generateLocation($ref, 'localhost')); + $ref = 'http://localhost:8080/?test'; + $this->assertEquals($ref, generateLocation($ref, 'localhost:8080')); + } + + /** + * Test generate location - anti loop. + */ + public function testGenerateLocationLoop() { + $ref = 'http://localhost/?test'; + $this->assertEquals('?', generateLocation($ref, 'localhost', array('test'))); + } + + /** + * Test generate location - from other domain. + */ + public function testGenerateLocationOut() { + $ref = 'http://somewebsite.com/?test'; + $this->assertEquals('?', generateLocation($ref, 'localhost')); + } + + /** + * Check supported PHP versions + */ + public function testCheckSupportedPHPVersion() + { + $minVersion = '5.3'; + checkPHPVersion($minVersion, '5.4.32'); + checkPHPVersion($minVersion, '5.5'); + checkPHPVersion($minVersion, '5.6.10'); + } + + /** + * Check a unsupported PHP version + * @expectedException Exception + * @expectedExceptionMessageRegExp /Your PHP version is obsolete/ + */ + public function testCheckSupportedPHPVersion51() + { + checkPHPVersion('5.3', '5.1.0'); + } + + /** + * Check another unsupported PHP version + * @expectedException Exception + * @expectedExceptionMessageRegExp /Your PHP version is obsolete/ + */ + public function testCheckSupportedPHPVersion52() + { + checkPHPVersion('5.3', '5.2'); + } + + /** + * Test is_session_id_valid with a valid ID. + */ + public function testIsSessionIdValid() + { + $this->assertTrue(is_session_id_valid('azertyuiop123456789AZERTYUIOP1aA')); + } + + /** + * Test is_session_id_valid with invalid IDs. + */ + public function testIsSessionIdInvalid() + { + $this->assertFalse(is_session_id_valid('')); + $this->assertFalse(is_session_id_valid(array())); + $this->assertFalse(is_session_id_valid('c0ZqcWF3VFE2NmJBdm1HMVQ0ZHJ3UmZPbTFsNGhkNHI=')); + } } -?>