/** * @test */ public function passingOptionsViaConstructorCorrectlySetsProperties() { $hash = new Strength(array('adapter' => new Wolfram())); $this->assertInstanceOf('Phpass\\Strength\\Adapter\\Wolfram', $hash->getAdapter()); }
/** * Check password strength using NIST Or Wolfram adapter (default NIST) * See https://github.com/rchouinard/phpass * Many thanks to Ryan Chouinard for the phpass package * Cyril Ogana <*****@*****.**> * 2015-07-18 * @param string $passwordString - The password string to evaluate * @param int $strengthAdapter - Named constant representing adapter to use (default NIST) * * @return int * * @access public * @static */ public static function passwordStrength($passwordString, $strengthAdapter = \PHPASS_PASSWORDSTRENGTHADAPTER_NIST) { if ($strengthAdapter == \PHPASS_PASSWORDSTRENGTHADAPTER_WOLFRAM) { $strengthAdapter = new Strength\Adapter\Wolfram(); } elseif ($strengthAdapter == \PHPASS_PASSWORDSTRENGTHADAPTER_NIST) { $strengthAdapter = new Strength\Adapter\Nist(); } else { throw new UserCredentialException('Phpass strength adapter calculator must be NIST or Wolfram. Wrong Flag provivded.', 1022); } $phpassStrength = new Strength($strengthAdapter); return $phpassStrength->calculate($passwordString); }