Commit 8630ba325ba95f584ecb40b96c97f6f7a86b6566
1 parent
f603f4d2
Exists in
master
and in
2 other branches
Bugfix tests
Showing
8 changed files
with
49 additions
and
11 deletions
Show diff stats
README.md
... | ... | @@ -54,9 +54,9 @@ Logiciel testé et validé sur les configurations suivantes : |
54 | 54 | VERSION ACTUELLE |
55 | 55 | |
56 | 56 | Date: 16/05/2019 |
57 | -Version: 2.12.12 | |
57 | +Version: 2.12.13 | |
58 | 58 | Author: EP |
59 | -Commentaire: Bugfix ajout materiel | |
59 | +Commentaire: Bugfix tests | |
60 | 60 | |
61 | 61 | IMPORTANT : |
62 | 62 | - Pour connaitre la version actuelle, taper "./VERSION" | ... | ... |
TESTS.sh
... | ... | @@ -11,3 +11,8 @@ vendor/bin/phpunit || vendor/phpunit/phpunit/phpunit |
11 | 11 | #vendor/bin/phpunit --verbose --log-tap tap.log |
12 | 12 | #vendor/bin/phpunit --testdox |
13 | 13 | |
14 | +# Executer UN SEUL test: | |
15 | +# Ex: je veux executer ONLY le test testMat31CreateAs() de MaterielsControllerTest: | |
16 | +#vendor/bin/phpunit --filter testMat31CreateAs | |
17 | +#vendor/bin/phpunit --filter testMat32CreateAdministratifOrTechnicalAs | |
18 | + | ... | ... |
src/Controller/MaterielsController.php
... | ... | @@ -820,8 +820,11 @@ class MaterielsController extends AppController |
820 | 820 | 'action' => 'view', |
821 | 821 | $id |
822 | 822 | ]); |
823 | - } else | |
823 | + } else { | |
824 | + debug("(EP debug): "); | |
825 | + debug($materiel->errors()); | |
824 | 826 | $this->Flash->error(__("Le matériel n'a pas pu être $action".".")); |
827 | + } | |
825 | 828 | } // if POST |
826 | 829 | |
827 | 830 | ... | ... |
src/Model/Table/MaterielsTable.php
src/Template/Materiels/edit.ctp
... | ... | @@ -23,7 +23,9 @@ $PROFILE_ADMINPLUS = $PROFILE_ADMINPLUS; |
23 | 23 | $PROFILE_SUPERADMIN = $PROFILE_SUPERADMIN; |
24 | 24 | $allProfiles = $allProfiles; |
25 | 25 | |
26 | -$_serialize = $_serialize; // True or False | |
26 | +// PAS TOUJOURS | |
27 | +//$_serialize = $_serialize; // True or False | |
28 | + | |
27 | 29 | $username = $username; |
28 | 30 | $configuration = $configuration; |
29 | 31 | $priviledgedUser = $priviledgedUser; // ATTENTION, $priviledgedUser = NULL si l'utilisateur courant n'est pas un utilisateur privilégié (pas dans la table "utilisateurs") | ... | ... |
tests/Fixture/MaterielsFixture.php
... | ... | @@ -711,6 +711,9 @@ class MaterielsFixture extends TestFixture { |
711 | 711 | 'metrologie' => 0, |
712 | 712 | 'fournisseur_id' => 2 |
713 | 713 | ], |
714 | + | |
715 | + // nom_createur = 'test0 test9' | |
716 | + //'nom_responsable' => 'test0 test9' | |
714 | 717 | [ |
715 | 718 | 'id' => 11, |
716 | 719 | 'designation' => 'Test 11 (C)', |
... | ... | @@ -736,8 +739,10 @@ class MaterielsFixture extends TestFixture { |
736 | 739 | 'etiquette' => 0, |
737 | 740 | 'lieu_detail' => 'Lorem ipsum dolor sit amet', |
738 | 741 | 'nom_responsable' => 'test0 test9', |
742 | + //'nom_responsable' => 'user5 USER', | |
739 | 743 | 'email_responsable' => 'Lorem ipsum dolor sit amet', |
740 | 744 | 'nom_createur' => 'test0 test9', |
745 | + //'nom_createur' => 'user5 USER', | |
741 | 746 | 'nom_modificateur' => 'Lorem ipsum dolor sit amet', |
742 | 747 | 'created' => '2016-04-19 09:09:29', |
743 | 748 | 'modified' => '2016-04-19 09:09:29', |
... | ... | @@ -747,6 +752,7 @@ class MaterielsFixture extends TestFixture { |
747 | 752 | 'metrologie' => 0, |
748 | 753 | 'fournisseur_id' => 1 |
749 | 754 | ], |
755 | + | |
750 | 756 | [ |
751 | 757 | 'id' => 12, |
752 | 758 | 'designation' => 'Test 12 (V)', |
... | ... | @@ -819,6 +825,8 @@ class MaterielsFixture extends TestFixture { |
819 | 825 | 'metrologie' => 0, |
820 | 826 | 'fournisseur_id' => 1 |
821 | 827 | ], |
828 | + | |
829 | + // Materiel ARCHIVED => pas vu par un simple utilisateur (materiel/index/ ne l'affiche pas) | |
822 | 830 | [ |
823 | 831 | 'id' => 14, |
824 | 832 | 'designation' => 'Test 14 (A)', |
... | ... | @@ -830,6 +838,7 @@ class MaterielsFixture extends TestFixture { |
830 | 838 | 'materiel_administratif' => 1, |
831 | 839 | 'materiel_technique' => 1, |
832 | 840 | 'status' => 'ARCHIVED', |
841 | + //'status' => 'TOBEARCHIVED', | |
833 | 842 | 'date_acquisition' => '2016-05-10', |
834 | 843 | 'prix_ht' => 75, |
835 | 844 | 'eotp' => 'Lorem ipsum dolor sit amet', | ... | ... |
tests/Fixture/SitesFixture.php
tests/TestCase/Controller/MaterielsControllerTest.php
... | ... | @@ -71,6 +71,7 @@ class MaterielsControllerTest extends General { |
71 | 71 | 'materiel_technique' => 1, |
72 | 72 | //'status' => 'CREATED', |
73 | 73 | 'date_acquisition' => '19-04-2016', |
74 | + //'date_acquisition' => '19-04-2019', | |
74 | 75 | /* |
75 | 76 | 'nom_responsable' => 'Jacques Utilisateur', |
76 | 77 | 'email_responsable' => 'Jacques.Utilisateur@irap.omp.eu' |
... | ... | @@ -117,10 +118,11 @@ class MaterielsControllerTest extends General { |
117 | 118 | parent::tearDown(); |
118 | 119 | } |
119 | 120 | |
120 | - // This is a data provider used for a lot of tests | |
121 | + // This are data providers used for a lot of tests | |
121 | 122 | // See https://jtreminio.com/2013/03/unit-testing-tutorial-part-2-assertions-writing-a-useful-test-and-dataprovider |
122 | - public function dataProviderRoles6() { return $this->ROLES6; } | |
123 | 123 | public function dataProviderRoles5() { return $this->ROLES5; } |
124 | + // Idem dataProviderRoles5 mais avec USER_from_ldap en plus: | |
125 | + public function dataProviderRoles6() { return $this->ROLES6; } | |
124 | 126 | |
125 | 127 | |
126 | 128 | |
... | ... | @@ -456,7 +458,9 @@ class MaterielsControllerTest extends General { |
456 | 458 | $newMateriel["$fields[0]"] = $i; |
457 | 459 | $newMateriel["$fields[1]"] = $j; |
458 | 460 | $combination = [$i,$j]; |
461 | + // ni administratif ni technique => must FAIL | |
459 | 462 | if ($combination == [0,0]) $this->_testMatCreate1FailsAs($role, $newMateriel, implode(',',$combination)); |
463 | + // technique only | |
460 | 464 | if ($combination == [0,1]) { |
461 | 465 | // cree un nouveau materiel |
462 | 466 | //$this->_testMatCreateAs($role, $newMateriel, implode(',',$combination)); |
... | ... | @@ -502,19 +506,29 @@ class MaterielsControllerTest extends General { |
502 | 506 | * @dataProvider dataProviderRoles6 |
503 | 507 | */ |
504 | 508 | //private function _testMatCreateAs($role, $materiel=null) { $this->testMat31CreateAs($role, $materiel); } |
505 | - public function testMat31CreateAs($role, $materiel=null) | |
506 | - { | |
507 | - $materiel = $materiel ? $this->newMaterielWithAllMandatoryFields : $materiel; | |
509 | + public function testMat31CreateAs($role, $materiel=null) { | |
510 | + //$materiel = $materiel ? $this->newMaterielWithAllMandatoryFields : $materiel; | |
511 | + if (is_null($materiel)) $materiel = $this->newMaterielWithAllMandatoryFields; | |
512 | + //debug($materiel); | |
508 | 513 | //$this->setUp(); |
509 | 514 | // On doit pouvoir accéder à la page une fois authentifié |
510 | 515 | $this->authAs($role); |
516 | + | |
517 | + // AVANT add | |
511 | 518 | $this->get('/materiels/index'); |
519 | + // USER ne voit pas les materiels ARCHIVED | |
512 | 520 | $nbmat = $this->USER_IS_ADMIN_AT_LEAST() ? 7 : 6; |
513 | 521 | $this->assertResponseContains("Liste des matériels (".$nbmat.")", $role); |
514 | - $this->post('/materiels/add', $this->newMaterielWithAllMandatoryFields); | |
522 | + //$this->post('/materiels/add', $this->newMaterielWithAllMandatoryFields); | |
523 | + $this->post('/materiels/add', $materiel); | |
524 | + | |
525 | + // APRES add | |
515 | 526 | $this->get('/materiels/index'); |
516 | 527 | $nbmat++; |
517 | - $this->assertResponseContains("Liste des matériels (".$nbmat.")", $role." Le matériel ne s'ajoute pas correctement"); | |
528 | + // VOIR LE HTML DE LA PAGE WEB | |
529 | + //var_dump($this->_getBodyAsString()); | |
530 | + $this->assertResponseContains("Liste des matériels (".$nbmat.")", "(testMat31CreateAs): Le matériel ne s'ajoute pas correctement (avec le profil $role)"); | |
531 | + //$this->assertResponseContains("Liste des matériels (", "(testMat31CreateAs): Le matériel ne s'ajoute pas correctement avec le profil $role"); | |
518 | 532 | $this->assertResponseContains("Test 15", "Le matériel ne s'ajoute pas correctement."); |
519 | 533 | $this->assertResponseContains("TEST-2016-0015", "La génération du n°de labo n'est pas bonne."); |
520 | 534 | //$this->tearDown(); | ... | ... |