diff --git a/assets/controllers/front_demande_lien_signalement/front_demande_lien_signalement.js b/assets/controllers/front_demande_lien_signalement/front_demande_lien_signalement.js index 303313021..9b991a9cc 100644 --- a/assets/controllers/front_demande_lien_signalement/front_demande_lien_signalement.js +++ b/assets/controllers/front_demande_lien_signalement/front_demande_lien_signalement.js @@ -22,8 +22,8 @@ function attachSubmitFormDemandeLienSignalementEvent() { containerFormDemandeLienSignalement.innerHTML = json.html; attachSubmitFormDemandeLienSignalementEvent(); }) - return false; - }); + return false + }) const inputAdresse = document?.querySelector('#demande_lien_signalement_adresseHelper') const apiAdresse = 'https://api-adresse.data.gouv.fr/search/?q=' const addressGroup = fomDemandeLienSignalement.querySelector('.fr-address-group') @@ -42,7 +42,6 @@ function attachSubmitFormDemandeLienSignalementEvent() { data-postcode="${feature.properties.postcode}" >${feature.properties.label}` }) - //pour chaque suggestion d'adresse on attache l'evenement click let suggestions = addressGroup.querySelectorAll('.fr-address-suggestion') suggestions.forEach((suggestion) => { attachAddressSuggestionEvent(suggestion) diff --git a/src/DataFixtures/Files/Signalement.yml b/src/DataFixtures/Files/Signalement.yml index a7d3141cd..02bae93ab 100644 --- a/src/DataFixtures/Files/Signalement.yml +++ b/src/DataFixtures/Files/Signalement.yml @@ -17,6 +17,7 @@ signalements: adresse_occupant: "3 rue Mars" cp_occupant: "13015" ville_occupant: "Marseille" + mail_occupant: "francis.cabrel@astaffort.com" statut: 2 reference: "2022-1" geoloc: "{\"lat\":\"43.3426152\",\"lng\":\"5.3711848\"}" diff --git a/src/DataFixtures/Loader/LoadSignalementData.php b/src/DataFixtures/Loader/LoadSignalementData.php index 6478ca13c..c8dc447a3 100644 --- a/src/DataFixtures/Loader/LoadSignalementData.php +++ b/src/DataFixtures/Loader/LoadSignalementData.php @@ -88,7 +88,7 @@ private function loadSignalements(ObjectManager $manager, array $row) ->setNbAdultes($row['nb_adultes']) ->setNbEnfantsM6($row['nb_enfants_m6']) ->setNbEnfantsP6($row['nb_enfants_p6']) - ->setMailOccupant($faker->email()) + ->setMailOccupant($row['mail_occupant'] ?? $faker->email()) ->setNumAppartOccupant($faker->randomNumber(3)) ->setNatureLogement($row['nature_logement']) ->setTypeLogement($row['type_logement'] ?? null) diff --git a/tests/Functional/Controller/HomepageControllerTest.php b/tests/Functional/Controller/HomepageControllerTest.php index bd386599b..ffd11859a 100644 --- a/tests/Functional/Controller/HomepageControllerTest.php +++ b/tests/Functional/Controller/HomepageControllerTest.php @@ -98,4 +98,24 @@ public function testSubmitContactWithEmptyMessage(): void $client->getResponse()->getContent() ); } + + public function testSubmitDemandeLienSignalement(): void + { + $client = static::createClient(); + /** @var UrlGeneratorInterface $generatorUrl */ + $generatorUrl = static::getContainer()->get(UrlGeneratorInterface::class); + $client->request('GET', $generatorUrl->generate('home')); + + $client->submitForm('demande_lien_signalement_save', [ + 'demande_lien_signalement[email]' => 'francis.cabrel@astaffort.com', + 'demande_lien_signalement[adresseHelper]' => '3 rue Mars 13015 Marseille', + 'demande_lien_signalement[adresse]' => '3 rue Mars', + 'demande_lien_signalement[codePostal]' => '13015', + 'demande_lien_signalement[ville]' => 'Marseille', + ]); + + $this->assertEmailCount(1); + $responseContent = json_decode($client->getResponse()->getContent(), true); + $this->assertStringContainsString('Si un signalement correspond aux informations saisies', $responseContent['html']); + } }