/**
  * {@inheritdoc}
  */
 public function generate()
 {
     do {
         $token = $this->getRandomToken();
     } while (!$this->uniquenessChecker->isUnique($token));
     return $token;
 }
 /**
  * {@inheritdoc}
  */
 public function generate()
 {
     do {
         $pin = $this->getRandomPin();
     } while (!$this->uniquenessChecker->isUnique($pin));
     return $pin;
 }
 function it_generates_string_tokens(UniquenessCheckerInterface $checker)
 {
     $checker->isUnique(Argument::any())->willReturn(true);
     $this->generate()->shouldBeString();
 }
 function it_generates_numeric_pins(UniquenessCheckerInterface $checker)
 {
     $checker->isUnique(Argument::any())->willReturn(true);
     $this->generate()->shouldBeNumeric();
 }