Add coverage tests: event detail with categories/billets, hidden, inactive, notBuyable
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -193,6 +193,72 @@ class HomeControllerTest extends WebTestCase
|
||||
self::assertResponseIsSuccessful();
|
||||
}
|
||||
|
||||
public function testEventDetailWithCategoriesAndBillets(): void
|
||||
{
|
||||
$client = static::createClient();
|
||||
$em = static::getContainer()->get(EntityManagerInterface::class);
|
||||
|
||||
$user = new User();
|
||||
$user->setEmail('test-event-billets-'.uniqid().'@example.com');
|
||||
$user->setFirstName('Orga');
|
||||
$user->setLastName('Billets');
|
||||
$user->setPassword('hashed');
|
||||
$user->setRoles(['ROLE_ORGANIZER']);
|
||||
$user->setIsApproved(true);
|
||||
$user->setIsVerified(true);
|
||||
$user->setCompanyName('Asso Billets');
|
||||
$em->persist($user);
|
||||
|
||||
$event = new \App\Entity\Event();
|
||||
$event->setAccount($user);
|
||||
$event->setTitle('Event Billets Test');
|
||||
$event->setStartAt(new \DateTimeImmutable('2026-08-01 10:00'));
|
||||
$event->setEndAt(new \DateTimeImmutable('2026-08-01 18:00'));
|
||||
$event->setAddress('1 rue test');
|
||||
$event->setZipcode('75001');
|
||||
$event->setCity('Paris');
|
||||
$event->setIsOnline(true);
|
||||
$em->persist($event);
|
||||
|
||||
$category = new \App\Entity\Category();
|
||||
$category->setName('Cat Active');
|
||||
$category->setEvent($event);
|
||||
$category->setStartAt(new \DateTimeImmutable('-1 day'));
|
||||
$category->setEndAt(new \DateTimeImmutable('+30 days'));
|
||||
$em->persist($category);
|
||||
|
||||
$billet = new \App\Entity\Billet();
|
||||
$billet->setName('Entree');
|
||||
$billet->setCategory($category);
|
||||
$billet->setPriceHT(1500);
|
||||
$em->persist($billet);
|
||||
|
||||
$billetNotBuyable = new \App\Entity\Billet();
|
||||
$billetNotBuyable->setName('Non Achetable');
|
||||
$billetNotBuyable->setCategory($category);
|
||||
$billetNotBuyable->setPriceHT(0);
|
||||
$billetNotBuyable->setNotBuyable(true);
|
||||
$em->persist($billetNotBuyable);
|
||||
|
||||
$categoryHidden = new \App\Entity\Category();
|
||||
$categoryHidden->setName('Cat Hidden');
|
||||
$categoryHidden->setEvent($event);
|
||||
$categoryHidden->setIsHidden(true);
|
||||
$em->persist($categoryHidden);
|
||||
|
||||
$categoryInactive = new \App\Entity\Category();
|
||||
$categoryInactive->setName('Cat Inactive');
|
||||
$categoryInactive->setEvent($event);
|
||||
$categoryInactive->setStartAt(new \DateTimeImmutable('+10 days'));
|
||||
$categoryInactive->setEndAt(new \DateTimeImmutable('+20 days'));
|
||||
$em->persist($categoryInactive);
|
||||
|
||||
$em->flush();
|
||||
|
||||
$client->request('GET', '/evenement/'.$user->getSlug().'/'.$event->getId().'-'.$event->getSlug());
|
||||
self::assertResponseIsSuccessful();
|
||||
}
|
||||
|
||||
public function testEventDetailRedirectsOnWrongSlug(): void
|
||||
{
|
||||
$client = static::createClient();
|
||||
|
||||
Reference in New Issue
Block a user