From 53c06be1f51116548712b5ee2b93d1f94bc439d7 Mon Sep 17 00:00:00 2001 From: Julio Date: Fri, 1 Oct 2021 20:33:15 +0200 Subject: [PATCH] Session: Add tests + fix query --- src/CoreBundle/Repository/SessionRepository.php | 8 ++++---- tests/CoreBundle/Repository/SessionRepositoryTest.php | 4 ++++ 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/CoreBundle/Repository/SessionRepository.php b/src/CoreBundle/Repository/SessionRepository.php index 9601a900e9..8f9368ae01 100644 --- a/src/CoreBundle/Repository/SessionRepository.php +++ b/src/CoreBundle/Repository/SessionRepository.php @@ -235,10 +235,10 @@ class SessionRepository extends ServiceEntityRepository $qb = $this->getEntityManager()->createQueryBuilder(); $qb ->select('sru') - ->from(User::class, 'u') - ->innerJoin(SessionRelUser::class, 'sru', Join::WITH, 'sru.user = u.id') - ->innerJoin(AccessUrlRelUser::class, 'uru', Join::WITH, 'uru.user = u.id') - ->andWhere('sru.session = :session AND uru.url = :url') + ->from(SessionRelUser::class, 'sru') + ->innerJoin('sru.user', 'u') + ->innerJoin('u.portals', 'p') + ->andWhere('sru.session = :session AND p.url = :url') ->setParameters([ 'session' => $session, 'url' => $url, diff --git a/tests/CoreBundle/Repository/SessionRepositoryTest.php b/tests/CoreBundle/Repository/SessionRepositoryTest.php index c0370ab1cd..f045d0b576 100644 --- a/tests/CoreBundle/Repository/SessionRepositoryTest.php +++ b/tests/CoreBundle/Repository/SessionRepositoryTest.php @@ -397,6 +397,7 @@ class SessionRepositoryTest extends AbstractApiTest ->setVisibility(Session::INVISIBLE) ; $em->persist($session); + $this->assertSame(0, $session->getCourses()->count()); $session->addCourse($course); @@ -436,5 +437,8 @@ class SessionRepositoryTest extends AbstractApiTest $sessions = $sessionRepo->getUsersByAccessUrl($session, $url, [Session::STUDENT]); $this->assertCount(2, $sessions); + + $sessions = $sessionRepo->getUsersByAccessUrl($session, $url, [Session::STUDENT, Session::DRH]); + $this->assertCount(2, $sessions); } }