assertTrue( \manager\Database::check('auto_increment_id', -2147483647) ); } public function testAutoIncrementSizeInfStringCorrect(){ $this->assertTrue( \manager\Database::check('auto_increment_id', '-2147483647') ); } public function testAutoIncrementSizeSupCorrect(){ $this->assertTrue( \manager\Database::check('auto_increment_id', 2147483647) ); } public function testAutoIncrementSizeSupStringCorrect(){ $this->assertTrue( \manager\Database::check('auto_increment_id', '2147483647') ); } public function testAutoIncrementSizeLtInfIncorrect(){ $this->assertFalse( \manager\Database::check('auto_increment_id', -2147483647-1) ); } public function testAutoIncrementSizeLtInfStringIncorrect(){ $this->assertFalse( \manager\Database::check('auto_increment_id', '-2147483648') ); } public function testAutoIncrementSizeGtSupIncorrect(){ $this->assertFalse( \manager\Database::check('auto_increment_id', 2147483647+1) ); } public function testAutoIncrementSizeGtSupStringIncorrect(){ $this->assertFalse( \manager\Database::check('auto_increment_id', '2147483648') ); } /* [1] Code RFID =========================================================*/ public function testUserCodeSize4(){ $this->assertTrue( \manager\Database::check('user.code', '01-23-AB-CD') ); } public function testUserCodeSize6(){ $this->assertTrue( \manager\Database::check('user.code', '01-23-45-67-89-AB') ); } public function testUserCodeSize4WrongCharacter(){ $this->assertFalse( \manager\Database::check('user.code', '01-23-AB-CG') ); } public function testUserCodeSizeGreaterThan6(){ $this->assertFalse( \manager\Database::check('user.code', '01-23-45-67-89-AB-CD') ); } public function testUserCodeSize6WrongCharacter(){ $this->assertFalse( \manager\Database::check('user.code', '01-23-45-67-89-AG') ); } /* [2] user.username ; machine.name ; group.name =========================================================*/ /* (1) Type */ public function testUsernameTypeStringCorrect(){ $this->assertTrue( \manager\Database::check('user.username', '012') ); } public function testUsernameTypeIntIncorrect(){ $this->assertFalse( \manager\Database::check('user.username', 012) ); } /* (2) Content */ public function testUsernameContentCorrect(){ $this->assertTrue( \manager\Database::check('user.username', '0123456789_-') ); $this->assertTrue( \manager\Database::check('user.username', 'abcdefghijklmnopqrstuvwxyz') ); $this->assertTrue( \manager\Database::check('user.username', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ') ); } public function testUsernameContentIncorrect(){ $illegal_chars = '{}[]()=+.,\'\\"/:;|!@#$%^&* '; foreach(str_split($illegal_chars) as $char) // Teste les caracteres enonces plus haut $this->assertFalse( \manager\Database::check('user.username', 'abc'.$char) ); } /* (3) Size */ public function testUsernameSize3Correct(){ $this->assertEquals( 3, strlen('012') ); $this->assertTrue( \manager\Database::check('user.username', '012') ); } public function testUsernameSize30Correct(){ $this->assertEquals( 30, strlen('0123456789abcdefghijklmno_-sda') ); $this->assertTrue( \manager\Database::check('user.username', '0123456789abcdefghijklmno_-sda') ); } public function testUsernameSizeLt3Incorrect(){ $this->assertLessThan( 3, strlen('') ); $this->assertFalse( \manager\Database::check('user.username', '') ); } public function testUsernameSizeGt30Incorrect(){ $this->assertGreaterThan( 30, strlen('0123456789abcdefghijklmno_-sdaa') ); $this->assertFalse( \manager\Database::check('user.username', '0123456789abcdefghijklmno_-sdaa') ); } /* [3] firstname / lastname =========================================================*/ /* (1) Type */ public function testFirstnameTypeStringCorrect(){ $this->assertTrue( \manager\Database::check('user.firstname', 'abc') ); } public function testFirstnameTypeIntIncorrect(){ $this->assertFalse( \manager\Database::check('user.firstname', 01932) ); } /* (2) Content */ public function testFirstnameContentCorrect(){ $this->assertTrue( \manager\Database::check('user.firstname', 'abcdefghijklmnopqrstuvwxyz') ); $this->assertTrue( \manager\Database::check('user.firstname', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ') ); } public function testFirstnameContentIncorrect(){ $illegal_chars = '{}[]()=_+.,\'\\"/:;|!@#$%^&*0123456789'; foreach(str_split($illegal_chars) as $char) // Teste les caracteres enonces plus haut $this->assertFalse( \manager\Database::check('user.firstname', 'abc'.$char) ); } /* (3) Size */ public function testFirstnameSize3Correct(){ $this->assertEquals( 3, strlen('abc') ); $this->assertTrue( \manager\Database::check('user.firstname', 'abc') ); } public function testFirstnameSize30Correct(){ $this->assertEquals( 30, strlen('abcdefghijklmnopqrstuvwxyz-k s') ); $this->assertTrue( \manager\Database::check('user.firstname', 'abcdefghijklmnopqrstuvwxyz-k s') ); } public function testFirstnameSizeLt3Incorrect(){ $this->assertLessThan( 3, strlen('ab') ); $this->assertFalse( \manager\Database::check('user.firstname', 'ab') ); } public function testFirstnameSizeGt30Incorrect(){ $this->assertGreaterThan( 30, strlen('abcdefghijklmnopqrstuvwxyz-k ss') ); $this->assertFalse( \manager\Database::check('user.firstname', 'abcdefghijklmnopqrstuvwxyz-k ss') ); } /* [4] Adresse mail =========================================================*/ /* (1) Size */ public function testMailSizeEqCorrect(){ $this->assertLessThanOrEqual( 50, 'nom-prenom.mot@domaine-d.gouv' ); $this->assertTrue( \manager\Database::check('user.mail', 'nom-prenom.mot@domaine-d.gouv') ); } public function testMailSizeSupCorrect(){ $this->assertGreaterThan( 50, strlen('ab12345678901234567890nom-prenom.mot@domaine-d.gouv') ); $this->assertFalse( \manager\Database::check('user.mail', 'ab12345678901234567890nom-prenom.mot@domaine-d.gouv') ); } /* (2) Content */ public function testMailContentCorrect(){ $this->assertTrue( \manager\Database::check('user.mail', '0nom-prenom.mot@domaine-d.gouv') ); } public function testMailContentIncorrect1(){ $this->assertFalse( \manager\Database::check('user.mail', '0nom-prenom.mot@domaine-d.gouve') ); } public function testMailContentIncorrect2(){ $this->assertFalse( \manager\Database::check('user.mail', '0nom-prenom.mot@domaine-d.g') ); } /* [5] Mot de passe =========================================================*/ public function testPasswordSizeEqCorrect(){ $password_hash = \manager\sessionManager::secure_sha1('monmotdepasse'); $this->assertEquals( 40, strlen($password_hash) ); $this->assertTrue( \manager\Database::check('user.password', $password_hash) ); } public function testPasswordSizeInfIncorrect(){ $password_hash = 'a'; $this->assertLessThan( 40, strlen($password_hash) ); $this->assertFalse( \manager\Database::check('user.password', $password_hash) ); } public function testPasswordSizeSupIncorrect(){ $password_hash = \manager\sessionManager::secure_sha1('monmotdepasse').'a'; $this->assertGreaterThan( 40, strlen($password_hash) ); $this->assertFalse( \manager\Database::check('user.password', $password_hash) ); } public function testPasswordContentCorrect(){ $this->assertTrue( \manager\Database::check('user.password', 'dd629d39c4576731a2bef003c72ff89d6fc2a99a') ); } public function testPasswordContentIncorrect(){ $this->assertContains( 'g', 'dd629d39c4576731a2bef003c72ff89d6fc2a9g' ); $this->assertFalse( \manager\Database::check('user.password', 'dd629d39c4576731a2bef003c72ff89d6fc2a9g') ); } /* [6] Status de l'utilisateur =========================================================*/ /* (1) Type */ public function testStatusTypeIntCorrect(){ $this->assertTrue( \manager\Database::check('user.status', 1) ); } public function testStatusTypeStringCorrect(){ $this->assertTrue( \manager\Database::check('user.status', '1') ); } public function testStatusTypeIntIncorrect(){ $this->assertFalse( \manager\Database::check('user.status', 1.03) ); } public function testStatusTypeStringIncorrect(){ $this->assertFalse( \manager\Database::check('user.status', '1.03') ); } /* (2) Size */ public function testStatusSizeInfCorrect(){ $this->assertGreaterThanOrEqual( 0, 0 ); $this->assertTrue( \manager\Database::check('user.status', 0) ); } public function testStatusSizeSupCorrect(){ $this->assertLessThanOrEqual( 100, 100 ); $this->assertTrue( \manager\Database::check('user.status', 100) ); } public function testStatusSizeInfIncorrect(){ $this->assertLessThan( 0, -1 ); $this->assertFalse( \manager\Database::check('user.status', -1) ); } public function testStatusSizeSupIncorrect(){ $this->assertGreaterThan( 100, 101 ); $this->assertFalse( \manager\Database::check('user.status', 101) ); } } ?>