예제 #1
0
 /**
  * Unit-test for Helper::getStr
  * @group RootClasses
  * @covers Veles\Helper::genStr
  * @dataProvider genStrProvider
  * @see Helper::getStr
  */
 public function testGenStr($length, $letters)
 {
     if (null === $length && null === $letters) {
         $length = 22;
         $letters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789./';
         $result = Helper::genStr();
     } else {
         $result = Helper::genStr($length, $letters);
     }
     $result_length = strlen($result);
     $unknown_array = [];
     $msg = 'Wrong result type: ' . gettype($result);
     $this->assertInternalType('string', $result, $msg);
     $msg = "Wrong result length: {$result_length}";
     $this->assertSame($length, $result_length, $msg);
     for ($i = 0; $i < $result_length; ++$i) {
         if (false === strpos($letters, $result[$i])) {
             $unknown_array[] = '"' . $result[$i] . '"';
         }
     }
     $msg = 'Result contains unknown symbols: ' . implode(',', $unknown_array);
     $this->assertTrue(empty($unknown_array), $msg);
 }
예제 #2
0
 /**
  * DataProvider for PasswordTest::testCheck
  */
 public function checkProvider()
 {
     $user = new User();
     $user->hash = crypt('password', '$2y$07$' . Helper::genStr());
     return [[$user, 'password', true], [$user, 'wrongPassword', false]];
 }