/** * Tests that the check method will check with configured hashers until a match * is found * * @return void */ public function testCheck() { $hasher = new FallbackPasswordHasher(['hashers' => ['Weak', 'Default']]); $weak = new WeakPasswordHasher(); $simple = new DefaultPasswordHasher(); $hash = $simple->hash('foo'); $otherHash = $weak->hash('foo'); $this->assertTrue($hasher->check('foo', $hash)); $this->assertTrue($hasher->check('foo', $otherHash)); }
/** * Tests that the check method will work with configured hashers including different * configs per hasher. * * @return void */ public function testCheckWithConfigs() { $hasher = new FallbackPasswordHasher(['hashers' => ['Default', 'Weak' => ['hashType' => 'md5']]]); $legacy = new WeakPasswordHasher(['hashType' => 'md5']); $simple = new DefaultPasswordHasher(); $hash = $simple->hash('foo'); $legacyHash = $legacy->hash('foo'); $this->assertTrue($hash !== $legacyHash); $this->assertTrue($hasher->check('foo', $hash)); $this->assertTrue($hasher->check('foo', $legacyHash)); }