validator = new Zend_Validate_Identical; } public function testTokenInitiallyNull() { $this->assertNull($this->validator->getToken()); } public function testCanSetToken() { $this->testTokenInitiallyNull(); $this->validator->setToken('foo'); $this->assertEquals('foo', $this->validator->getToken()); } public function testCanSetTokenViaConstructor() { $validator = new Zend_Validate_Identical('foo'); $this->assertEquals('foo', $validator->getToken()); } public function testValidatingWhenTokenNullReturnsFalse() { $this->assertFalse($this->validator->isValid('foo')); } public function testValidatingWhenTokenNullSetsMissingTokenMessage() { $this->testValidatingWhenTokenNullReturnsFalse(); $messages = $this->validator->getMessages(); $this->assertTrue(array_key_exists('missingToken', $messages)); } public function testValidatingAgainstTokenWithNonMatchingValueReturnsFalse() { $this->validator->setToken('foo'); $this->assertFalse($this->validator->isValid('bar')); } public function testValidatingAgainstTokenWithNonMatchingValueSetsNotSameMessage() { $this->testValidatingAgainstTokenWithNonMatchingValueReturnsFalse(); $messages = $this->validator->getMessages(); $this->assertTrue(array_key_exists('notSame', $messages)); } public function testValidatingAgainstTokenWithMatchingValueReturnsTrue() { $this->validator->setToken('foo'); $this->assertTrue($this->validator->isValid('foo')); } /** * @see ZF-6511 */ public function testNotSameMessageContainsTokenAndValue() { $this->testValidatingAgainstTokenWithNonMatchingValueReturnsFalse(); $messages = $this->validator->getMessages(); $this->assertContains("The token 'foo'", $messages['notSame']); $this->assertContains('bar', $messages['notSame']); $this->assertContains('does not match', $messages['notSame']); } /** * @see ZF-6953 */ public function testValidatingAgainstEmptyToken() { $this->validator->setToken(''); $this->assertTrue($this->validator->isValid('')); } /** * @see ZF-7128 */ public function testValidatingAgainstNonStrings() { $this->validator->setToken(true); $this->assertTrue($this->validator->isValid(true)); $this->assertFalse($this->validator->isValid(1)); $this->validator->setToken(array('one' => 'two', 'three')); $this->assertTrue($this->validator->isValid(array('one' => 'two', 'three'))); $this->assertFalse($this->validator->isValid(array())); } } // Call Zend_Validate_IdenticalTest::main() if this source file is executed directly. if (PHPUnit_MAIN_METHOD == 'Zend_Validate_IdenticalTest::main') { Zend_Validate_IdenticalTest::main(); }