/**
  * @param PenaltyEvent $event
  */
 public function closedPenalty(PenaltyEvent $event)
 {
     $user = $event->getPenalty()->getUser();
     $criteria = Criteria::create()->where(Criteria::expr()->eq('status', Penalty::ACTIVE));
     if ($user->getPenalties()->matching($criteria)->count() === 0) {
         $user->setIsPenalized(false);
         $this->manager->persist($user);
         $this->manager->flush();
     }
 }
 public function let(ObjectManager $manager, Penalty $penalty, PenaltyEvent $event, User $user)
 {
     $this->beConstructedWith($manager);
     $event->getPenalty()->willReturn($penalty);
     $penalty->getUser()->willReturn($user);
 }