added tests for ValidatorBuilder fluent interface

This commit is contained in:
Andreas Hucks 2012-08-25 17:59:01 +02:00
parent fec11aec01
commit 1ff081d93f

View File

@ -0,0 +1,110 @@
<?php
/*
* This file is part of the Symfony package.
*
* (c) Fabien Potencier <fabien@symfony.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Symfony\Component\Validator\Tests;
use Symfony\Component\Validator\ValidatorBuilder;
use Symfony\Component\Validator\ValidatorBuilderInterface;
class ValidatorBuilderTest extends \PHPUnit_Framework_TestCase
{
/**
* @var ValidatorBuilderInterface
*/
protected $builder;
protected function setUp()
{
$this->builder = new ValidatorBuilder();
}
protected function tearDown()
{
$this->builder = null;
}
public function testAddObjectInitializer()
{
$this->assertSame($this->builder, $this->builder->addObjectInitializer(
$this->getMock('Symfony\Component\Validator\ObjectInitializerInterface')
));
}
public function testAddObjectInitializers()
{
$this->assertSame($this->builder, $this->builder->addObjectInitializers(array()));
}
public function testAddXmlMapping()
{
$this->assertSame($this->builder, $this->builder->addXmlMapping('mapping'));
}
public function testAddXmlMappings()
{
$this->assertSame($this->builder, $this->builder->addXmlMappings(array()));
}
public function testAddYamlMapping()
{
$this->assertSame($this->builder, $this->builder->addYamlMapping('mapping'));
}
public function testAddYamlMappings()
{
$this->assertSame($this->builder, $this->builder->addYamlMappings(array()));
}
public function testAddMethodMapping()
{
$this->assertSame($this->builder, $this->builder->addMethodMapping('mapping'));
}
public function testAddMethodMappings()
{
$this->assertSame($this->builder, $this->builder->addMethodMappings(array()));
}
public function testEnableAnnotationMapping()
{
if (!class_exists('Doctrine\Common\Annotations\AnnotationReader')) {
$this->markTestSkipped('Annotations is required for this test');
}
$this->assertSame($this->builder, $this->builder->enableAnnotationMapping());
}
public function testDisableAnnotationMapping()
{
$this->assertSame($this->builder, $this->builder->disableAnnotationMapping());
}
public function testSetMetadataFactory()
{
$this->assertSame($this->builder, $this->builder->setMetadataFactory(
$this->getMock('Symfony\Component\Validator\Mapping\ClassMetadataFactoryInterface'))
);
}
public function testSetMetadataCache()
{
$this->assertSame($this->builder, $this->builder->setMetadataCache($this->getMock(
'Symfony\Component\Validator\Mapping\Cache\CacheInterface'))
);
}
public function testSetConstraintValidatorFactory()
{
$this->assertSame($this->builder, $this->builder->setConstraintValidatorFactory(
$this->getMock('Symfony\Component\Validator\ConstraintValidatorFactoryInterface'))
);
}
}