[ 'User' => [ 'sn' => [0 => 'test2'], 'mail' => [0 => 'testa@test.fr'], 'uid' => [0 => 'testa'], 'givenname' => [0 => 'test1'], 'cn' => [0 => 'testa'], 'userpassword' => [0 => 'test'], ] ] ]; $this->session($user); $authType = ['authType' => 'cn']; $this->session($authType); } public function authAdminPlus() { $user = [ 'Auth' => [ 'User' => [ 'sn' => [0 => 'test4'], 'mail' => [0 => 'testz@test.fr'], 'uid' => [0 => 'testz'], 'givenname' => [0 => 'test3'], 'cn' => [0 => 'testz'], 'userpassword' => [0 => 'test'], ] ] ]; $this->session($user); $authType = ['authType' => 'cn']; $this->session($authType); } public function authAdmin() { $user = [ 'Auth' => [ 'User' => [ 'sn' => [0 => 'test6'], 'mail' => [0 => 'teste@test.fr'], 'uid' => [0 => 'teste'], 'givenname' => [0 => 'test5'], 'cn' => [0 => 'teste'], 'userpassword' => [0 => 'test'], ] ] ]; $this->session($user); $authType = ['authType' => 'cn']; $this->session($authType); } public function authResponsable() { $user = [ 'Auth' => [ 'User' => [ 'sn' => [0 => 'test8'], 'mail' => [0 => 'testr@test.fr'], 'uid' => [0 => 'testr'], 'givenname' => [0 => 'test7'], 'cn' => [0 => 'testr'], 'userpassword' => [0 => 'test'], ] ] ]; $this->session($user); $authType = ['authType' => 'cn']; $this->session($authType); } public function authUtilisateur() { $user = [ 'Auth' => [ 'User' => [ 'sn' => [0 => 'test0'], 'mail' => [0 => 'testt@test.fr'], 'uid' => [0 => 'testt'], 'givenname' => [0 => 'test9'], 'cn' => [0 => 'testt'], 'userpassword' => [0 => 'test'], ] ] ]; $this->session($user); $authType = ['authType' => 'cn']; $this->session($authType); } /** * setUp method * * @return void */ public function setUp() { parent::setUp(); $config = TableRegistry::exists('Materiels') ? [] : ['className' => 'App\Model\Table\MaterielsTable']; $this->Materiels = TableRegistry::get('Materiels', $config); $config = TableRegistry::exists('Suivis') ? [] : ['className' => 'App\Model\Table\SuivisTable']; $this->Suivis = TableRegistry::get('Suivis', $config); $this->ControllerMateriels = new MaterielsController(); } /** * tearDown method * * @return void */ public function tearDown() { unset($this->Materiels); unset($this->Suivis); unset($this->ControllerMateriels); parent::tearDown(); } /** * Test index method if no authentified * * @return void */ public function testIndexNoAuth() { $this->get('/materiels/index'); $this->assertRedirect('/users/login', 'Problème : Non authentifier mais accès materiels/index'); } /** * Test index method * * @return void */ public function testIndex() { $this->authSuperAdmin(); //1) On doit pouvoir accéder à la page une fois authentifié $this->get('/materiels/index'); $this->assertNoRedirect("Authentifier mais redirection vers /users/login."); //2) On doit avoir 7 matériels $this->assertResponseContains("Liste des matériels (7)", "Le nombre de materiels renvoyé est incorrect."); } /** * Test view method * * @return void */ public function testView() { $this->authSuperAdmin(); $this->get('/materiels/view/3'); $this->assertResponseContains("Test 3", "Le matériel retourné n'est pas celui demandé."); $this->assertResponseContains("Suivi(s) du matériel (1)", "Le nb de suivi lié au matériel est incorrect."); $this->assertResponseContains("Emprunt(s) du matériel (1)", "Le nb d'emprunt lié au matériel est incorrect."); $this->assertResponseContains("Fichier(s) lié(s) au matériel (1)", "Le nb de fichier lié au matériel est incorrect."); } /** * Test add method * * @return void */ public function testAdd() { $this->authSuperAdmin(); $data = [ 'id' => 15, 'designation' => 'Test 15', 'sur_categorie_id' => 1, 'categorie_id' => 1, 'materiel_administratif' => 0, 'materiel_technique' => 1, 'status' => 'CREATED', 'date_acquisition' => '19-04-2016', 'nom_createur' => 'Pallier Etienne', 'nom_modificateur' => 'Jean Administration', 'nom_responsable' => 'Jacques Utilisateur', 'email_responsable' => 'Jacques.Utilisateur@irap.omp.eu', ]; $this->post('/materiels/add', $data); $this->get('/materiels/index'); $this->assertResponseContains("Liste des matériels (8)", "Le matériel ne s'ajoute pas correctement."); $this->assertResponseContains("Test 15", "Le matériel ne s'ajoute pas correctement."); $this->assertResponseContains("TEST-2016-0015", "La génération du n°de labo n'est pas bonne."); } /** * Test edit method * * @return void */ public function testEdit() { $this->authSuperAdmin(); $data = [ 'designation' => 'Test 6', 'sur_categorie_id' => 1, 'categorie_id' => 1, 'materiel_administratif' => 0, 'materiel_technique' => 1, 'status' => 'CREATED', 'date_acquisition' => '19-04-2016', 'nom_createur' => 'Pallier Etienne', 'nom_modificateur' => 'Jean Administration', 'nom_responsable' => 'Jacques Utilisateur', 'email_responsable' => 'Jacques.Utilisateur@irap.omp.eu', ]; $this->post('/materiels/edit/2', $data); $this->get('/materiels/index'); $this->assertResponseContains("Test 6", "Le matériel n'a pas était édité correctement"); // $this->assertResponseNotContains("Test 2", "Le matériel n'a pas était édité correctement"); $data2 = [ 'designation' => 'Test 9', 'sur_categorie_id' => 1, 'categorie_id' => 1, 'materiel_administratif' => 0, 'materiel_technique' => 1, 'status' => 'xxx', 'date_acquisition' => '19-04-2016', 'nom_createur' => 'Pallier Etienne', 'nom_modificateur' => 'Jean Administration', 'nom_responsable' => 'Jacques Utilisateur', 'email_responsable' => 'Jacques.Utilisateur@irap.omp.eu', ]; $this->post('/materiels/edit/2', $data2); $this->get('/materiels/index'); $this->assertResponseNotContains("Test 9", "Le matériel a été édité, alors que le statut n'est pas valide."); } /** * Test delete method * * @return void */ public function testDelete() { $this->authSuperAdmin(); $this->post('/materiels/delete/2'); $this->get('/materiels/index'); $this->assertResponseContains("Liste des matériels (6)", "Le matériel n'as pas été supprimé."); $this->assertResponseNotContains("Test 2", "Le matériel n'as pas été supprimé."); } /** * Test find method * * @return void */ public function testFind() { $this->authSuperAdmin(); $dataSearch = [ 's_designation' => 'Test', 's_matostype' => '', 's_sur_categorie_id' => '', 's_categorie_id' => '', 's_sous_categorie_id' => '', 's_status' => '', 's_groupes_metier_id' => '', 's_groupes_thematique_id' => '', 's_numero_commande' => '', 's_numero_laboratoire' => '', 's_organisme_id' => '', 's_nom_responsable' => '', 's_numero_inventaire_organisme' => '', 's_numero_inventaire_old' => '', 's_date_acquisition' => '', 's_periode_acquisition1' => '', 's_periode_acquisition2' => '', 's_prix_ht' => '', 's_prix_ht_sup' => '', 's_prix_ht_inf' => '', ]; //Test sans aucun champ $this->post('/materiels/find'); $this->assertResponseContains("Aucun résultats pour cette recherche.", "Le contenu de la recherche devrait être vide."); //Test champ générale formulaire $this->post('/materiels/find', ['s_all' => 'TEST-2016-0002']); $this->assertResponseContains("Résultats (1)", "Le nb de materiels pour la recherche générale du formulaire est incorrecte."); //Test champ générale menu latéral $this->post('/materiels/find', ['s_all_2' => 'TEST-2016-0002']); $this->assertResponseContains("Résultats (1)", "Le nb de materiels pour la recherche général du menu latéral est incorrecte."); //Test champ designation $this->post('/materiels/find', $dataSearch); $this->assertResponseContains("Résultats (6)", "Le nb de materiels pour la recherche par désignation est incorrecte."); //Test champ numero_laboratoire $dataSearch['s_designation'] = ''; $dataSearch['s_numero_laboratoire'] = 'TEST-2016-0003'; $this->post('/materiels/find', $dataSearch); $this->assertResponseContains("Résultats (1)", "Le nb de materiels pour la recherche par numero de laboratoire est incorrecte."); //Test champ status $dataSearch['s_numero_laboratoire'] = ''; $dataSearch['s_status'] = 'CREATED'; $this->post('/materiels/find', $dataSearch); $this->assertResponseContains("Résultats (3)", "Le nb de materiels pour la recherche par statut est incorrecte."); //Test champ date_acquisition $dataSearch['s_status'] = ''; $dataSearch['s_date_acquisition'] = '2016-05-11'; $this->post('/materiels/find', $dataSearch); $this->assertResponseContains("Résultats (5)", "Le nb de materiels pour la recherche par date d'acquisition est incorrecte."); //Test champ periode_acquisition1 (debut) $dataSearch['s_date_acquisition'] = ''; $dataSearch['s_periode_acquisition1'] = '2015-01-01'; $this->post('/materiels/find', $dataSearch); $this->assertResponseContains("Résultats (6)", "Le nb de materiels pour la recherche par debut de periode d'acquisition est incorrecte."); //Test champ periode_acquisition1 (debut) && champ periode_acquisition2 (fin) $dataSearch['s_periode_acquisition2'] = '2016-01-01'; $this->post('/materiels/find', $dataSearch); $this->assertResponseContains("Résultats (1)", "Le nb de materiels pour la recherche par intervalle entre la periode d'acquisition (debut) et la periode d'acquisition (fin) est incorrecte."); //Test champ periode_acquisition2 (fin) $dataSearch['s_periode_acquisition1'] = ''; $this->post('/materiels/find', $dataSearch); $this->assertResponseContains("Résultats (2)", "Le nb de materiels pour la recherche par fin de periode d'acquisition est incorrecte."); //Test champ prix_ht $dataSearch['s_periode_acquisition2'] = ''; $dataSearch['s_prix_ht'] = '50'; $this->post('/materiels/find', $dataSearch); $this->assertResponseContains("Résultats (1)", "Le nb de materiels pour la recherche par prix ht est incorrecte."); //Test champ prix_ht_sup $dataSearch['s_prix_ht'] = ''; $dataSearch['s_prix_ht_sup'] = '30'; $this->post('/materiels/find', $dataSearch); $this->assertResponseContains("Résultats (6)", "Le nb de materiels pour la recherche par prix ht superieur est incorrecte."); //Test champ prix_ht_inf $dataSearch['s_prix_ht_sup'] = ''; $dataSearch['s_prix_ht_inf'] = '70'; $this->post('/materiels/find', $dataSearch); $this->assertResponseContains("Résultats (2)", "Le nb de materiels pour la recherche par prix ht inferieur est incorrecte."); } /** * Test addReadSuivisMateriel * * @return void */ public function testAddReadSuivisMateriel() { $this->authSuperAdmin(); $dataSuivi1 = [ 'materiel_id' => 1, 'date_controle' => '2016-04-19', 'date_prochain_controle' => '2016-04-19', 'type_suivi_id' => 1, 'organisme' => 'Lorem ipsum dolor sit amet', 'frequence' => 1, 'type_frequence' => '/ Jours', 'commentaire' => 'Lorem ipsum dolor sit amet', 'nom_createur' => 'Lorem ipsum dolor sit amet', 'nom_modificateur' => 'Lorem ipsum dolor sit amet', 'created' => '2016-04-19 09:09:28', 'modified' => '2016-04-19 09:09:28' ]; $dataSuivi2 = [ 'materiel_id' => 1, 'date_controle' => '2016-04-19', 'date_prochain_controle' => '2016-04-19', 'type_suivi_id' => 1, 'organisme' => 'Lorem ipsum dolor sit amet', 'frequence' => 1, 'type_frequence' => '/ Jours', 'commentaire' => 'Lorem ipsum dolor sit amet', 'nom_createur' => 'Lorem ipsum dolor sit amet', 'nom_modificateur' => 'Lorem ipsum dolor sit amet', 'created' => '2016-04-19 09:09:28', 'modified' => '2016-04-19 09:09:28' ]; $this->post('/suivis/add/1', $dataSuivi1); $this->post('/suivis/add/1', $dataSuivi2); $this->get('/materiels/view/1'); $this->assertResponseContains("Suivi(s) du matériel (3)", "Le nb de suivi renvoyé pour ce matériel est incorrect."); } /** * Test addReadEmpruntsMateriel * * @return void */ public function testAddReadEmpruntsMateriel() { $this->authSuperAdmin(); $dataEmprunt1 = [ 'materiel_id' => 1, 'date_emprunt' => '2016-04-19', 'date_retour_emprunt' => '2016-04-19', 'emprunt_interne' => 1, 'laboratoire' => 'Lorem ipsum dolor sit amet', 'site_id' => 1, 'e_lieu_detail' => 'Lorem ipsum dolor sit amet', 'nom_emprunteur' => 'Lorem ipsum dolor sit amet', 'email_emprunteur' => 'Lorem ipsum dolor sit amet', 'tel' => 'Lorem ipsum dolor ', 'commentaire' => 'Lorem ipsum dolor sit amet', 'nom_createur' => 'Lorem ipsum dolor sit amet', 'nom_modificateur' => 'Lorem ipsum dolor sit amet', 'created' => '2016-04-19 09:09:26', 'modified' => '2016-04-19 09:09:26' ]; $dataEmprunt2 = [ 'materiel_id' => 1, 'date_emprunt' => '2016-04-19', 'date_retour_emprunt' => '2016-04-19', 'emprunt_interne' => 0, 'laboratoire' => 'Lorem ipsum dolor sit amet', 'site_id' => 1, 'e_lieu_detail' => 'Lorem ipsum dolor sit amet', 'nom_emprunteur' => 'Lorem ipsum dolor sit amet', 'email_emprunteur' => 'Lorem ipsum dolor sit amet', 'tel' => 'Lorem ipsum dolor ', 'commentaire' => 'Lorem ipsum dolor sit amet', 'nom_createur' => 'Lorem ipsum dolor sit amet', 'nom_modificateur' => 'Lorem ipsum dolor sit amet', 'created' => '2016-04-19 09:09:26', 'modified' => '2016-04-19 09:09:26' ]; $this->post('/emprunts/add/1', $dataEmprunt1); $this->post('/emprunts/add/1', $dataEmprunt2); $this->get('/materiels/view/1'); $this->assertResponseContains("Emprunt(s) du matériel (3)", "Le nb d'emprunt renvoyé pour ce matériel est incorrect."); } /** NE FONCTIONNE PAS * * Test addCopieMateriel * * @return void * public function testAddCopieMateriel() { $this->authUser(); $data = [ 'designation' => 'Test 14', 'sur_categorie_id' => 1, 'categorie_id' => 1, 'materiel_administratif' => 0, 'materiel_technique' => 1, 'status' => 'CREATED', 'date_acquisition' => '2016-04-16']; $this->post('/materiels/add/13', $data); $this->get('/materiels/view/14'); $this->assertResponseContains("Jesus", "La copie du materiel ne se fait pas correctement."); $this->assertResponseContains("TEST COPIE MATERIEL", "La copie du materiel ne se fait pas correctement."); } /** * * Test updateStatutCreated * * @return void */ public function testUpdateStatutCreated() { $this->authSuperAdmin(); $this->post('/materiels/status-validated/11'); $this->get('/materiels/view/11'); $this->assertResponseContains('VALIDATED', "La validation du materiel ne se fait pas correctement."); } /** * * Test updateStatutValidated * * @return void */ public function testUpdateStatutValidated() { $this->authSuperAdmin(); $this->post('/materiels/status-to-be-archived/12'); $this->get('/materiels/view/12'); $this->assertResponseContains('TOBEARCHIVED', "La demande d'archivation du materiel ne se fait pas correctement."); } /** * * Test updateStatutToBeArchived * * @return void */ public function testUpdateStatutToBeArchived() { $this->authSuperAdmin(); $this->post('/materiels/status-archived/13'); $this->get('/materiels/view/13'); $this->assertResponseContains('ARCHIVED', "L'archivation du materiel ne se fait pas correctement."); } /** * Test UpdatePlaceEtiquetteMateriel * * @return void */ public function testUpdatePlaceEtiquetteMateriel() { $this->authSuperAdmin(); $this->post('/materiels/set-label-is-placed/11/view'); $this->get('/materiels/view/11'); $this->assertResponseContains('Etiquette posée Oui', "Le placement de l'étiquette sur le materiel ne se fait pas correctement."); } /** * Test UpdateNotPlaceEtiquetteMateriel * * @return void */ public function testUpdateNotPlaceEtiquetteMateriel() { $this->authSuperAdmin(); $this->post('/materiels/set-label-is-not-placed/12/view'); $this->get('/materiels/view/12'); $this->assertResponseContains('Etiquette posée Non', "L'enlevement de l'étiquette sur le materiel ne se fait pas correctement."); } /** * Test UpdateStatusSelectedMateriel * * @return void */ public function testUpdateStatusSelectedMateriel() { $this->authSuperAdmin(); $this->post('/materiels/execActions', ['updateSelectedStatus' => 'true', 'what' => 'CREATED', 11 => '1', 12 => '1', 13 => '1']); $this->get('/materiels/view/11'); $this->assertResponseNotContains('CREATED', "La mise à jour de plusieurs statuts sur le materiel ne se fait pas correctement."); $this->assertResponseNotContains('TOBEARCHIVED', "La mise à jour de plusieurs statuts sur le materiel ne se fait pas correctement."); $this->assertResponseNotContains('ARCHIVED', "La mise à jour de plusieurs statuts sur le materiel ne se fait pas correctement."); $this->get('/materiels/view/12'); $this->assertResponseNotContains('CREATED', "La mise à jour de plusieurs statuts sur le materiel ne se fait pas correctement."); $this->assertResponseNotContains('TOBEARCHIVED', "La mise à jour de plusieurs statuts sur le materiel ne se fait pas correctement."); $this->assertResponseNotContains('ARCHIVED', "La mise à jour de plusieurs statuts sur le materiel ne se fait pas correctement."); $this->get('/materiels/view/13'); $this->assertResponseNotContains('CREATED', "La mise à jour de plusieurs statuts sur le materiel ne se fait pas correctement."); $this->assertResponseNotContains('TOBEARCHIVED', "La mise à jour de plusieurs statuts sur le materiel ne se fait pas correctement."); $this->assertResponseNotContains('ARCHIVED', "La mise à jour de plusieurs statuts sur le materiel ne se fait pas correctement."); } /** * Test PresenceQrCodeMateriel * * @return void */ public function testPresenceQrCodeMateriel() { $this->authSuperAdmin(); $this->get('/materiels/view/12'); $this->assertResponseContains('alt="QrCode', "Le QRCode n'est pas sur la vue matériel."); } /** * Test ACLViewUtilisateur * * @return void */ public function testACLViewUtilisateur() { $this->authUtilisateur(); $this->get('/materiels/view/12'); $this->assertResponseContains('Test 12', 'Le profil utilisateur ne peut pas lire la view correctement.'); $this->assertResponseNotContains('EOTP', 'Le profil utilisateur a accès à la partie administrative sur la view.'); } /** * Test ACLViewAdmin * * @return void */ public function testACLViewAdmin() { $this->authAdmin(); $this->get('/materiels/view/12'); $this->assertResponseContains('Test 12', 'Le profil admin+ ne peut pas lire la view correctement.'); $this->assertResponseContains('EOTP', 'Le profil admin+ n\'a pas accès à la partie administrative sur la view.'); } /** * Test ACLIndexUtilisateur * * @return void */ public function testACLIndexUtilisateur() { $this->authUtilisateur(); $this->get('/materiels/index'); $this->assertResponseContains('Liste des matériels (6)', 'Le profil utilisateur a accès aux matériels archivés.'); } /** * Test ACLIndexAdmin * * @return void */ public function testACLIndexAdmin() { $this->authAdmin(); $this->get('/materiels/index'); $this->assertResponseContains('Liste des matériels (7)', 'Le profil admin n\'a pas accès aux matériels archivés.'); } /** * Test ACLAddUtilisateur * * @return void */ public function testACLAddUtilisateur() { $this->authUtilisateur(); $this->get('/materiels/add'); $this->assertResponseNotContains('EOTP', 'Le profil utilisateur a accès à la partie administrative sur le formulaire add.'); } /** * Test ACLAddAdmin * * @return void */ public function testACLAddAdmin() { $this->authAdmin(); $this->get('/materiels/add'); $this->assertResponseContains('EOTP', 'Le profil admin+ n\'a pas accès à la partie administrative sur le formulaire add.'); } /** * Test ACLEditUtilisateur * * @return void */ public function testACLEditUtilisateur() { $this->authUtilisateur(); $this->get('/materiels/edit/12'); $this->assertResponseNotContains('Test 12', 'Le profil utilisateur a accès au formulaire edit, alors que le matériel ne lui appartient pas.'); $this->get('/materiels/edit/11'); $this->assertResponseContains('Test 11', 'Le profil utilisateur n\'a pas accès au formulaire edit, alors que le matériel lui appartient.'); $this->assertResponseNotContains('EOTP', 'Le profil utilisateur a accès à la partie administrative sur le formulaire edit.'); } /** * Test ACLEditAdmin * * @return void */ public function testACLEditAdmin() { $this->authAdmin(); $this->get('/materiels/edit/12'); $this->assertResponseContains('EOTP', 'Le profil admin+ n\'a pas accès à la partie administrative sur le formulaire edit.'); } /** * Test ACLDeleteUtilisateur * * @return void */ public function testACLDeleteUtilisateur() { $this->authUtilisateur(); $this->post('/materiels/delete/2'); $this->get('/materiels/index'); $this->assertResponseContains('Liste des matériels (6)', 'Le profil utilisateur a accès à la suppression, alors que le matériel ne lui appartient pas.'); $this->post('/materiels/delete/11'); $this->get('/materiels/index'); $this->assertResponseContains('Liste des matériels (5)', 'Le profil utilisateur n\'a pas accès à la suppression, alors que le matériel lui appartient.'); } /** * Test ACLDeleteAdmin * * @return void */ public function testACLDeleteAdmin() { $this->authAdmin(); $this->post('/materiels/delete/13'); $this->get('/materiels/index'); $this->assertResponseContains('Liste des matériels (7)', 'Le profil admin+ a accès à la suppression alors que le statut est TOBEARCHIVED.'); $this->post('/materiels/delete/2'); $this->get('/materiels/index'); $this->assertResponseContains('Liste des matériels (6)', 'Le profil admin+ n\'a pas accès à la suppression.'); } /** * Test ACLChangeStatutUtilisateur * * @return void */ public function testACLChangeStatutUtilisateur() { $this->authUtilisateur(); $this->post('/materiels/status-validated/11'); $this->get('/materiels/view/11'); $this->assertResponseContains('CREATED', "La validation du materiel se fait avec un profil utilisateur."); $this->post('/materiels/status-to-be-archived/12'); $this->get('/materiels/view/12'); $this->assertResponseContains('VALIDATED', "La demande d'archivation du materiel se fait avec un profil utilisateur."); $this->post('/materiels/status-archived/13'); $this->get('/materiels/view/13'); $this->assertResponseContains('TOBEARCHIVED', "L'archivation du materiel se fait avec un profil utilisateur."); } /** * Test ACLChangeStatutAdmin * * @return void */ public function testACLChangeStatutAdmin() { $this->authAdmin(); $this->post('/materiels/status-validated/11'); $this->get('/materiels/view/11'); $this->assertResponseContains('VALIDATED', "La validation du materiel ne se fait pas correctement avec un profil admin+."); $this->post('/materiels/status-to-be-archived/12'); $this->get('/materiels/view/12'); $this->assertResponseContains('TOBEARCHIVED', "La demande d'archivation du materiel ne se fait pas correctement avec un profil admin+."); $this->post('/materiels/status-archived/13'); $this->get('/materiels/view/13'); $this->assertResponseContains('ARCHIVED', "L'archivation du materiel ne se fait pas correctement avec un profil admin+."); } /** TEST IMPOSSIBLE CAR FONCTION DU CONTROLLER FINI PAR EXIT() * * Test exportFind * * @return void * public function testExportFind() { $this->authUser(); $csv = 'id;Designation;Sur-categorie;Categorie;Sous-categorie;"Numero interne";Description;Organisme;"Mat. administratif";"Mat. technique";Statut;"Date d\'acquisition";"Date de reception";Fournisseur;"Prix HT";EOTP;"Numero de commande";"Code comptable";"Numero de serie";"Grp. thematique";"Grp. metier";"Numero inventaire organisme";"Ancien Numero inventaire";"Site stockage";"Nom responsable";"Email responsable" 12;"Test 12";"Lorem ipsum dolor sit amet";"Lorem ipsum dolor sit amet";"Lorem ipsum dolor sit amet";TEST-2016-0012;"Lorem ipsum dolor sit amet, aliquet feugiat. Convallis morbi fringilla gravida, phasellus feugiat dapibus velit nunc, pulvinar eget sollicitudin venenatis cum nullam, vivamus ut a sed, mollitia lectus. Nulla vestibulum massa neque ut et, id hendrerit sit, feugiat in taciti enim proin nibh, tempor dignissim, rhoncus duis vestibulum nunc mattis convallis.";"Lorem ipsum dolor sit amet";1;1;VALIDATED;11/05/2016;19/04/2016;"Lorem ipsum dolor sit amet";75;"Lorem ipsum dolor sit amet";"Lorem ipsum dolor sit amet";"Lorem ipsum dolor sit amet";"Lorem ipsum dolor sit amet";"Lorem ipsum dolor sit amet";"Lorem ipsum dolor sit amet";"Lorem ipsum dolor sit amet";"Lorem ipsum dolor sit amet";"Lorem ipsum dolor sit amet-Lorem ipsum dolor sit amet";"Lorem ipsum dolor sit amet";"Lorem ipsum dolor sit amet"'; $materiel = $this->Materiels->get('12'); $data = [ 'result' => [$materiel]]; $this->session($data); $this->put('/materiels/export/search'); //$this->assertTextContains(, $csv); $this->assertResponseContains($csv, 'L\'export CSV de la recherche ne fonctionne pas correctement'); } /** TEST IMPOSSIBLE CAR FONCTION DU CONTROLLER FINI PAR EXIT() * * Test exportAll * * @return void * public function testExportAll() { $this->authUser(); $this->>post('materiels/export', ['exportAll' => 'test']); $this->assertResponseContains("fdsf"); } /** TEST IMPOSSIBLE CAR FONCTION DU CONTROLLER FINI PAR EXIT() * Test generateRubanMateriel * * @return void * public function testGenerateRubanMateriel() { $this->authUser(); } */ }