Skip to content

Commit db5b39d

Browse files
committed
Merge pull request #428 from Eye4web/validator-array_push-fix
Validator array push fix
2 parents 0000c6e + 2f76bd1 commit db5b39d

File tree

4 files changed

+10
-16
lines changed

4 files changed

+10
-16
lines changed

src/ZfcUser/Form/ChangeEmailFilter.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ public function __construct(AuthenticationOptionsInterface $options, $emailValid
2222
$identityFields = $options->getAuthIdentityFields();
2323
if ($identityFields == array('email')) {
2424
$validators = array('name' => 'EmailAddress');
25-
array_push($validators, $identityParams['validators']);
25+
array_push($identityParams['validators'], $validators);
2626
}
2727

2828
$this->add($identityParams);

src/ZfcUser/Form/ChangePasswordFilter.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public function __construct(AuthenticationOptionsInterface $options)
1818
$identityFields = $options->getAuthIdentityFields();
1919
if ($identityFields == array('email')) {
2020
$validators = array('name' => 'EmailAddress');
21-
array_push($validators, $identityParams['validators']);
21+
array_push($identityParams['validators'], $validators);
2222
}
2323

2424
$this->add($identityParams);

tests/ZfcUserTest/Form/ChangeEmailFilterTest.php

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,9 @@ public function testConstruct()
2121
$this->assertArrayHasKey('newIdentity', $inputs);
2222
$this->assertArrayHasKey('newIdentityVerify', $inputs);
2323

24-
$this->assertEquals(0, $inputs['identity']->getValidatorChain()->count());
24+
$validators = $inputs['identity']->getValidatorChain()->getValidators();
25+
$this->assertArrayHasKey('instance', $validators[0]);
26+
$this->assertInstanceOf('\Zend\Validator\EmailAddress', $validators[0]['instance']);
2527
}
2628

2729
/**
@@ -32,7 +34,7 @@ public function testConstructIdentityEmail($onlyEmail)
3234
$options = $this->getMock('ZfcUser\Options\ModuleOptions');
3335
$options->expects($this->once())
3436
->method('getAuthIdentityFields')
35-
->will($this->returnValue(array('email')));
37+
->will($this->returnValue(($onlyEmail) ? array('email') : array('username')));
3638

3739
$validator = $this->getMockBuilder('ZfcUser\Validator\NoRecordExists')->disableOriginalConstructor()->getMock();
3840
$filter = new Filter($options, $validator);
@@ -47,11 +49,6 @@ public function testConstructIdentityEmail($onlyEmail)
4749
if ($onlyEmail === false) {
4850
$this->assertEquals(0, $inputs['identity']->getValidatorChain()->count());
4951
} else {
50-
// @todo remove this test skip if #383 is fixed
51-
if ($identity instanceof \Zend\InputFilter\Input && $identity->getValidatorChain()->count() == 0) {
52-
$this->markTestSkipped("currently we have a bug in this validator, pls fix #383");
53-
}
54-
5552
// test email as identity
5653
$validators = $identity->getValidatorChain()->getValidators();
5754
$this->assertArrayHasKey('instance', $validators[0]);

tests/ZfcUserTest/Form/ChangePasswordFilterTest.php

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,9 @@ public function testConstruct()
2121
$this->assertArrayHasKey('newCredential', $inputs);
2222
$this->assertArrayHasKey('newCredentialVerify', $inputs);
2323

24-
$this->assertEquals(0, $inputs['identity']->getValidatorChain()->count());
24+
$validators = $inputs['identity']->getValidatorChain()->getValidators();
25+
$this->assertArrayHasKey('instance', $validators[0]);
26+
$this->assertInstanceOf('\Zend\Validator\EmailAddress', $validators[0]['instance']);
2527
}
2628

2729
/**
@@ -32,7 +34,7 @@ public function testConstructIdentityEmail($onlyEmail)
3234
$options = $this->getMock('ZfcUser\Options\ModuleOptions');
3335
$options->expects($this->once())
3436
->method('getAuthIdentityFields')
35-
->will($this->returnValue($onlyEmail ? array('email') : array()));
37+
->will($this->returnValue($onlyEmail ? array('email') : array('username')));
3638

3739
$filter = new Filter($options);
3840

@@ -47,11 +49,6 @@ public function testConstructIdentityEmail($onlyEmail)
4749
if ($onlyEmail === false) {
4850
$this->assertEquals(0, $inputs['identity']->getValidatorChain()->count());
4951
} else {
50-
// @todo remove this test skip if #383 is fixed
51-
if ($identity instanceof \Zend\InputFilter\Input && $identity->getValidatorChain()->count() == 0) {
52-
$this->markTestSkipped("currently we have a bug in this validator, pls fix #383");
53-
}
54-
5552
// test email as identity
5653
$validators = $identity->getValidatorChain()->getValidators();
5754
$this->assertArrayHasKey('instance', $validators[0]);

0 commit comments

Comments
 (0)