public function let(EntityManager $manager, EventDispatcherInterface $dispatcher, Faculty $faculty, RentalRepository $rentalRepository, LockerRepository $lockerRepository, User $user, Rental $rental, Locker $locker) { $days_length_rental = 7; $this->beConstructedWith($manager, $dispatcher, $lockerRepository, $rentalRepository, $days_length_rental); $user->getLocker()->willReturn(null); $user->getIsPenalized()->willReturn(false); $user->getQueue()->willReturn(null); $user->getFaculty()->willReturn($faculty); $faculty->getIsEnabled()->willReturn(true); $locker->getOwner()->willReturn(null); $locker->getStatus()->willReturn(Locker::AVAILABLE); $rentalRepository->getCurrentRental($locker)->willReturn($rental); $rental->getIsRenewable()->willReturn(true); }
public function it_finds_current_locker_rental(Locker $locker, Rental $rental, User $user, EntityManager $manager, QueryBuilder $builder, AbstractQuery $query, Expr $expr) { $locker->getOwner()->shouldBeCalled()->willReturn($user); $manager->createQueryBuilder()->shouldBeCalled()->willReturn($builder); $builder->expr()->shouldBeCalled()->willReturn($expr); $builder->select('o')->shouldBeCalled()->willReturn($builder); $builder->from(Argument::any(), 'o', Argument::any())->shouldBeCalled()->willReturn($builder); $expr->eq('o.user', ':user')->shouldBeCalled()->willReturn($expr); $builder->andWhere($expr)->shouldBeCalled()->willReturn($builder); $expr->eq('o.locker', ':locker')->shouldBeCalled()->willReturn($expr); $builder->andWhere($expr)->shouldBeCalled()->willReturn($builder); $expr->isNull('o.returnAt')->shouldBeCalled()->willReturn($expr); $builder->andWhere($expr)->shouldBeCalled()->willReturn($builder); $builder->setParameter('user', $user)->shouldBeCalled()->willReturn($builder); $builder->setParameter('locker', $locker)->shouldBeCalled()->willReturn($builder); $builder->getQuery()->shouldBeCalled()->willReturn($query); $query->getOneOrNullResult()->shouldBeCalled()->willReturn($rental); $this->getCurrentRental($locker); }