function it_returns_locale_of_currently_logged_admin_user(TokenStorageInterface $tokenStorage, TokenInterface $token, AdminUserInterface $admin) { $admin->getLocaleCode()->willReturn('en_US'); $token->getUser()->willreturn($admin); $tokenStorage->getToken()->willReturn($token); $this->getLocaleCode()->shouldReturn('en_US'); }
/** * @param AdminUserInterface $user * @param InputInterface $input * @param OutputInterface $output * * @return AdminUserInterface */ private function configureNewUser(AdminUserInterface $user, InputInterface $input, OutputInterface $output) { $userRepository = $this->get('sylius.repository.admin_user'); if ($input->getOption('no-interaction')) { Assert::notNull($userRepository->findOneByEmail('*****@*****.**')); $user->setEmail('*****@*****.**'); $user->setPlainPassword('sylius'); return $user; } $questionHelper = $this->getHelper('question'); do { $question = $this->createEmailQuestion($output); $email = $questionHelper->ask($input, $output, $question); $exists = null !== $userRepository->findOneByEmail($email); if ($exists) { $output->writeln('<error>E-Mail is already in use!</error>'); } } while ($exists); $user->setEmail($email); $user->setPlainPassword($this->getAdministratorPassword($input, $output)); return $user; }
/** * @Given /^I want to edit (this administrator)$/ * @Given /^I am editing (my) details$/ */ public function iWantToEditThisAdministrator(AdminUserInterface $adminUser) { $this->updatePage->open(['id' => $adminUser->getId()]); }
/** * @When /^(this administrator) logs in using "([^"]+)" password$/ */ public function theyLogIn(AdminUserInterface $adminUser, $password) { $this->logInAgain($adminUser->getUsername(), $password); }
/** * @Given /^(this administrator) is using ("[^"]+" locale)$/ * @Given /^(I) am using ("[^"]+" locale) for my panel$/ */ public function thisAdministratorIsUsingLocale(AdminUserInterface $adminUser, $localeCode) { $adminUser->setLocaleCode($localeCode); $this->userRepository->add($adminUser); $this->sharedStorage->set('administrator', $adminUser); }