mirror of
https://github.com/Respect/Validation.git
synced 2024-06-29 02:30:06 +02:00
Increase coverage of tests for AbstractComposite
This commit is contained in:
parent
6f77f8ac9b
commit
2371e7c6db
|
@ -150,4 +150,77 @@ class AbstractCompositeTest extends \PHPUnit_Framework_TestCase
|
|||
$compositeRuleMock->addRule($simpleRuleMock);
|
||||
$compositeRuleMock->setName($ruleName);
|
||||
}
|
||||
|
||||
public function testRemoveRulesShouldRemoveAllTheAddedRules()
|
||||
{
|
||||
$simpleRuleMock = $this->getMock('Respect\\Validation\\Validatable');
|
||||
|
||||
$compositeRuleMock = $this->getMockForAbstractClass('Respect\\Validation\\Rules\\AbstractComposite');
|
||||
$compositeRuleMock->addRule($simpleRuleMock);
|
||||
$compositeRuleMock->removeRules();
|
||||
|
||||
$this->assertEmpty($compositeRuleMock->getRules());
|
||||
}
|
||||
|
||||
public function testShouldReturnTheAmountOfAddedRules()
|
||||
{
|
||||
$compositeRuleMock = $this->getMockForAbstractClass('Respect\\Validation\\Rules\\AbstractComposite');
|
||||
$compositeRuleMock->addRule($this->getMock('Respect\\Validation\\Validatable'));
|
||||
$compositeRuleMock->addRule($this->getMock('Respect\\Validation\\Validatable'));
|
||||
$compositeRuleMock->addRule($this->getMock('Respect\\Validation\\Validatable'));
|
||||
|
||||
$this->assertCount(3, $compositeRuleMock->getRules());
|
||||
}
|
||||
|
||||
public function testHasRuleShouldReturnFalseWhenThereIsNoRuleAppended()
|
||||
{
|
||||
$compositeRuleMock = $this->getMockForAbstractClass('Respect\\Validation\\Rules\\AbstractComposite');
|
||||
|
||||
$this->assertFalse($compositeRuleMock->hasRule(''));
|
||||
}
|
||||
|
||||
public function testHasRuleShouldReturnFalseWhenRuleIsNotFound()
|
||||
{
|
||||
$oneSimpleRuleMock = $this->getMock('Respect\\Validation\\Validatable');
|
||||
|
||||
$compositeRuleMock = $this->getMockForAbstractClass('Respect\\Validation\\Rules\\AbstractComposite');
|
||||
$compositeRuleMock->addRule($oneSimpleRuleMock);
|
||||
|
||||
$anotherSimpleRuleMock = $this->getMock('Respect\\Validation\\Validatable');
|
||||
|
||||
$this->assertFalse($compositeRuleMock->hasRule($anotherSimpleRuleMock));
|
||||
}
|
||||
|
||||
public function testHasRuleShouldReturnFalseWhenRulePassedAsStringIsNotFound()
|
||||
{
|
||||
$simpleRuleMock = $this->getMock('Respect\\Validation\\Validatable');
|
||||
|
||||
$compositeRuleMock = $this->getMockForAbstractClass('Respect\\Validation\\Rules\\AbstractComposite');
|
||||
$compositeRuleMock->addRule($simpleRuleMock);
|
||||
|
||||
$this->assertFalse($compositeRuleMock->hasRule('SomeRule'));
|
||||
}
|
||||
|
||||
public function testHasRuleShouldReturnTrueWhenRuleIsFound()
|
||||
{
|
||||
$simpleRuleMock = $this->getMock('Respect\\Validation\\Validatable');
|
||||
|
||||
$compositeRuleMock = $this->getMockForAbstractClass('Respect\\Validation\\Rules\\AbstractComposite');
|
||||
$compositeRuleMock->addRule($simpleRuleMock);
|
||||
|
||||
$this->assertTrue($compositeRuleMock->hasRule($simpleRuleMock));
|
||||
}
|
||||
|
||||
public function testShouldAddRulesByPassingThroughConstructor()
|
||||
{
|
||||
$simpleRuleMock = $this->getMock('Respect\\Validation\\Validatable');
|
||||
$anotherSimpleRuleMock = $this->getMock('Respect\\Validation\\Validatable');
|
||||
|
||||
$compositeRuleMock = $this->getMockForAbstractClass('Respect\\Validation\\Rules\\AbstractComposite', [
|
||||
$simpleRuleMock,
|
||||
$anotherSimpleRuleMock
|
||||
]);
|
||||
|
||||
$this->assertCount(2, $compositeRuleMock->getRules());
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue