/** * {@inheritdoc} */ public function initialize($object) { if ($object instanceof CustomerInterface) { $emailCanonical = $this->canonicalizer->canonicalize($object->getEmail()); $object->setEmailCanonical($emailCanonical); } }
/** * {@inheritDoc} */ public function loadUserByUsername($usernameOrEmail) { $usernameOrEmail = $this->canonicalizer->canonicalize($usernameOrEmail); $user = $this->findUser($usernameOrEmail); if (null === $user) { throw new UsernameNotFoundException(sprintf('Username "%s" does not exist.', $usernameOrEmail)); } return $user; }
/** * @param LifecycleEventArgs $event */ public function canonicalize(LifecycleEventArgs $event) { $item = $event->getEntity(); if ($item instanceof CustomerInterface) { $item->setEmailCanonical($this->canonicalizer->canonicalize($item->getEmail())); } elseif ($item instanceof UserInterface) { $item->setUsernameCanonical($this->canonicalizer->canonicalize($item->getUsername())); } }
function it_loads_user_by_email(UserRepositoryInterface $userRepository, CanonicalizerInterface $canonicalizer, User $user) { $canonicalizer->canonicalize('*****@*****.**')->willReturn('*****@*****.**'); $userRepository->findOneByEmail('*****@*****.**')->willReturn($user); $this->loadUserByUsername('*****@*****.**')->shouldReturn($user); }
function it_loads_user_by_user_name(UserRepositoryInterface $userRepository, CanonicalizerInterface $canonicalizer, User $user) { $canonicalizer->canonicalize('testUser')->willReturn('testuser'); $userRepository->findOneBy(['usernameCanonical' => 'testuser'])->willReturn($user); $this->loadUserByUsername('testUser')->shouldReturn($user); }