for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace CWP\CWP\Tests\Extensions;
use PHPUnit_Framework_TestCase;
use CWP\CWP\Extensions\SynonymValidator;
class SynonymValidatorTest extends PHPUnit_Framework_TestCase {
/**
* @var SynonymValidator
*/
protected $validator;
* @inheritdoc
public function setUp() {
parent::setUp();
$this->validator = new SynonymValidator(array(
'Synonyms',
));
}
public function tearDown() {
$this->validator = null;
parent::tearDown();
* @dataProvider validValuesProvider
public function testItAllowsValidValues($value) {
$this->validator->php(array(
'Synonyms' => $value,
$this->assertEmpty($this->validator->getErrors());
* @return array
public function validValuesProvider() {
return array(
array('foo'),
array('foo,bar,baz'),
array('foo, bar, baz'),
array('
foo
bar
baz
'),
array('foo => bar, baz'),
# this is a comment, it should be ignored!
foo, bar, baz
foo => bar, baz
# ...as should this.
);
* @dataProvider invalidValuesProvider
*
* @param string $value
public function testItDisallowsInvalidValues($value) {
$this->assertNotEmpty($this->validator->getErrors());
public function invalidValuesProvider() {
array('foo, bar baz, qux'),
array('foo => bar baz, qux')