/**
  * @param InputInterface  $input
  * @param OutputInterface $output
  * @param User            $user
  * @param QuestionHelper  $questionHelper
  *
  * @return User
  */
 protected function editEmail(InputInterface $input, OutputInterface $output, User $user, QuestionHelper $questionHelper)
 {
     $emailQuestion = new Question('Email [required]: ');
     $emailQuestion->setValidator(function ($answer) {
         if (!filter_var($answer, FILTER_VALIDATE_EMAIL)) {
             throw new \RuntimeException("This is not a valid email address");
         }
         return $answer;
     });
     $emailQuestion->setMaxAttempts(2);
     $user->setEmail($questionHelper->ask($input, $output, $emailQuestion));
     return $user;
 }
 /**
  * @param string $realName
  * @param string $email
  * @param array  $roles
  *
  * @return User
  */
 public function createUser($realName, $email, array $roles)
 {
     $user = new User();
     $user->setRealName($realName);
     $user->setEmail($email);
     $user->setRoles($roles);
     return $user;
 }