Skip to content

Commit

Permalink
add test #1977
Browse files Browse the repository at this point in the history
  • Loading branch information
sfinx13 committed Jan 12, 2024
1 parent 6b32774 commit 64d9dda
Show file tree
Hide file tree
Showing 3 changed files with 75 additions and 5 deletions.
4 changes: 2 additions & 2 deletions src/Factory/Oilhi/DossierMessageFactory.php
Original file line number Diff line number Diff line change
Expand Up @@ -63,8 +63,8 @@ public function createInstance(Affectation $affectation): DossierMessage
->setCommuneSignalement($signalement->getVilleOccupant())
->setCodePostalSignalement($signalement->getCpOccupant())
->setTypeDeclarant($typeDeclarant)
->setTelephoneDeclarant($signalement->getTelDeclarant())
->setCourrielDeclarant($signalement->getMailDeclarant())
->setTelephoneDeclarant($signalement->getIsNotOccupant() ? $signalement->getTelDeclarant() : $signalement->getTelOccupant())
->setCourrielDeclarant($signalement->getIsNotOccupant() ? $signalement->getMailDeclarant() : $signalement->getMailOccupant())
->setNomOccupant($signalement->getNomOccupant())
->setPrenomOccupant($signalement->getPrenomOccupant())
->setTelephoneOccupant($signalement->getTelOccupant())
Expand Down
17 changes: 14 additions & 3 deletions tests/FixturesHelper.php
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
use App\Entity\Criticite;
use App\Entity\Enum\InterventionType;
use App\Entity\Enum\PartnerType;
use App\Entity\Enum\ProfileDeclarant;
use App\Entity\File;
use App\Entity\Intervention;
use App\Entity\Partner;
Expand All @@ -26,6 +27,7 @@
use App\Utils\Enum\ExtensionAdresse;
use Faker\Factory;
use Faker\Provider\Address;
use libphonenumber\PhoneNumber;

trait FixturesHelper
{
Expand All @@ -45,7 +47,7 @@ public function getAffectation(PartnerType $partnerType): Affectation
);
}

public function getSignalement(): Signalement
public function getSignalement(?Territory $territory = null): Signalement
{
$faker = Factory::create('fr_FR');

Expand All @@ -57,14 +59,23 @@ public function getSignalement(): Signalement
->setTelOccupant($faker->phoneNumber())
->setAdresseOccupant('25 rue du test')
->setEtageOccupant(2)
->setVilleOccupant($faker->city())
->setCpOccupant(Address::postcode())
->setVilleOccupant('Calais')
->setCpOccupant('62100')
->setNumAppartOccupant(2)
->setNomOccupant($faker->lastName())
->setPrenomOccupant($faker->firstName())
->setTelOccupant($faker->phoneNumber())
->setMailOccupant($faker->email())
->setNomProprio($faker->lastName())
->setPrenomProprio($faker->firstName())
->setTerritory($territory)
->setInseeOccupant('62193')
->setProfileDeclarant(ProfileDeclarant::LOCATAIRE)
->setValidatedAt(new \DateTimeImmutable())
->addSuivi($this->getSuiviPartner());
}


/**
* @return Signalement[]
*/
Expand Down
59 changes: 59 additions & 0 deletions tests/Functional/Factory/Oilhi/DossierMessageFactoryTest.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
<?php

namespace App\Tests\Functional\Factory\Oilhi;

use App\Entity\Enum\InterventionType;
use App\Entity\Intervention;
use App\Entity\Signalement;
use App\Factory\Oilhi\DossierMessageFactory;
use App\Repository\SignalementRepository;
use App\Tests\FixturesHelper;
use Doctrine\ORM\EntityManagerInterface;
use Doctrine\Persistence\ManagerRegistry;
use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;
use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
use Symfony\Component\Security\Csrf\CsrfTokenManagerInterface;

class DossierMessageFactoryTest extends KernelTestCase
{
use FixturesHelper;

private EntityManagerInterface $entityManager;

protected function setUp(): void
{
self::bootKernel();
$this->entityManager = self::getContainer()->get('doctrine')->getManager();
}

public function testDossierMessageFullyCreated()
{
/** @var SignalementRepository $signalementRepository */
$signalementRepository = $this->entityManager->getRepository(Signalement::class);
/** @var Signalement $signalement */
$signalement = $signalementRepository->findOneBy(['reference' => '2024-01']);

$affectation = $signalement->getAffectations()->first();

$urlGenerator = self::getContainer()->get(UrlGeneratorInterface::class);
$csrfTokenManager = self::getContainer()->get(CsrfTokenManagerInterface::class);

$dossierMessageFactory = new DossierMessageFactory($urlGenerator, $csrfTokenManager, true);

$dossierMessage = $dossierMessageFactory->createInstance($affectation);

$this->assertNotEmpty($dossierMessage->getUuidSignalement());
$this->assertNotEmpty($dossierMessage->getDateDepotSignalement());
$this->assertNotEmpty($dossierMessage->getDateAffectationSignalement());
$this->assertNotEmpty($dossierMessage->getCourrielContributeurs());
$this->assertNotEmpty($dossierMessage->getAdresseSignalement());
$this->assertNotEmpty($dossierMessage->getCommuneSignalement());
$this->assertNotEmpty($dossierMessage->getCodePostalSignalement());
$this->assertNotEmpty($dossierMessage->getTypeDeclarant());
$this->assertNotEmpty($dossierMessage->getTelephoneDeclarant());
$this->assertNotEmpty($dossierMessage->getCourrielDeclarant());

$this->assertCount(2, $dossierMessage->get);

}
}

0 comments on commit 64d9dda

Please sign in to comment.