diff --git a/index.php b/index.php index f2af661..6dcb999 100755 --- a/index.php +++ b/index.php @@ -1,5 +1,4 @@ + + + + tests/Database_check.php + + + + + + + + + diff --git a/phpunit/tests/Database_check.php b/phpunit/tests/Database_check.php new file mode 100644 index 0000000..8d9eb1b --- /dev/null +++ b/phpunit/tests/Database_check.php @@ -0,0 +1,167 @@ +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] username + =========================================================*/ + /* (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->assertTrue( \manager\Database::check('user.username', '012') ); + } + + public function testUsernameSize30Correct(){ + $this->assertTrue( \manager\Database::check('user.username', '0123456789abcdefghijklmno_-sda') ); + } + + public function testUsernameSizeLt3Incorrect(){ + $this->assertFalse( \manager\Database::check('user.username', '01') ); + } + + public function testUsernameSizeGt30Incorrect(){ + $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->assertTrue( \manager\Database::check('user.firstname', 'abc') ); + } + + public function testFirstnameSize30Correct(){ + $this->assertTrue( \manager\Database::check('user.firstname', 'abcdefghijklmnopqrstuvwxyz-k s') ); + } + + public function testFirstnameSizeLt3Incorrect(){ + $this->assertFalse( \manager\Database::check('user.firstname', 'ab') ); + } + + public function testFirstnameSizeGt30Incorrect(){ + $this->assertFalse( \manager\Database::check('user.firstname', 'abcdefghijklmnopqrstuvwxyz-k ss') ); + } + + /* [4] Adresse mail + =========================================================*/ + public function testMailContentCorrect(){ + $this->assertTrue( \manager\Database::check('user.mail', 'nom-prenom.mot@domaine-d.gouv') ); + } + + public function testMailContentIncorrect1(){ + $this->assertFalse( \manager\Database::check('user.mail', 'nom-prenom.mot@domaine-d.gouve') ); + } + + public function testMailContentIncorrect2(){ + $this->assertFalse( \manager\Database::check('user.mail', 'nom-prenom.mot@domaine-d.g') ); + } + + + + } + +?> \ No newline at end of file diff --git a/todo.md b/todo.md index 3d87446..8d3adcc 100755 --- a/todo.md +++ b/todo.md @@ -13,6 +13,7 @@ ############ # EN COURS # ############ +- [.] [phpunit/tests/Database_check] Tests unitaire du checker - [ ] [Database] Checker de type - [ ] Gestion des groupes (utilisateurs/machines) - [x] bdd @@ -40,6 +41,7 @@ ######## # FAIT # ######## +- [x] [phpunit/] Install+Config phpunit - [x] [manager/Repo] Gestion des Repo - [x] [ManagerError] Correction/ajout des codes erreurs - [x] [ModuleRequest] Modification des erreurs diff --git a/view/users.php b/view/users.php index 7403533..3c3f2fb 100755 --- a/view/users.php +++ b/view/users.php @@ -91,6 +91,14 @@ echo $user['mail']; echo ""; echo""; + + // Groupes de la machine + echo ""; + echo \manager\ResourceDispatcher::getResource('f/svg/group/st/container'); + + echo "a"; + echo "a"; + echo"";