diff -r 806e57d67020 -r e54dfe4d0b2b vendor/bundles/FOS/UserBundle/Tests/Validation/UniqueValidatorTest.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/bundles/FOS/UserBundle/Tests/Validation/UniqueValidatorTest.php Fri Sep 30 11:24:53 2011 +0200 @@ -0,0 +1,51 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace FOS\UserBundle\Tests\Validation; + +use FOS\UserBundle\Validator\UniqueValidator; +use FOS\UserBundle\Validator\Unique; + +class UniqueValidatorTest extends \PHPUnit_Framework_TestCase +{ + private $validator; + private $userManagerMock; + private $constraint; + private $user; + + public function setUp() + { + $this->userManagerMock = $this->getMock('FOS\UserBundle\Model\UserManagerInterface'); + $this->constraint = new Unique(); + $this->validator = new UniqueValidator($this->userManagerMock); + $this->user = $this->getMock('FOS\UserBundle\Model\UserInterface'); + } + + public function testFalseOnDuplicateUserProperty() + { + $this->userManagerMock->expects($this->once()) + ->method('validateUnique') + ->will($this->returnValue(false)) + ->with($this->equalTo($this->user), $this->equalTo($this->constraint)); + + $this->assertFalse($this->validator->isValid($this->user, $this->constraint)); + } + + public function testTrueOnUniqueUserProperty() + { + $this->userManagerMock->expects($this->once()) + ->method('validateUnique') + ->will($this->returnValue(true)) + ->with($this->equalTo($this->user), $this->equalTo($this->constraint)); + + $this->assertTrue($this->validator->isValid($this->user, $this->constraint)); + } +}