tests/Validator/FieldMinLengthTest.php
<?php
namespace Gdbots\Tests\Pbjc\Validator;
use Gdbots\Pbjc\FieldDescriptor;
use Gdbots\Pbjc\SchemaDescriptor;
use Gdbots\Pbjc\Validator\FieldMinLength;
class FieldMinLengthTest extends \PHPUnit_Framework_TestCase
{
public function testValidateNoConfig()
{
$a = new SchemaDescriptor('pbj:vendor:package:category:message:1-0-0', ['fields' => [
new FieldDescriptor('f1', [
'type' => 'string',
]),
]]);
$b = new SchemaDescriptor('pbj:vendor:package:category:message:1-0-1', ['fields' => [
new FieldDescriptor('f1', [
'type' => 'string',
]),
]]);
$asset = new FieldMinLength();
$asset->validate($a, $b);
$this->assertTrue(true);
}
public function testValidateSame()
{
$a = new SchemaDescriptor('pbj:vendor:package:category:message:1-0-0', ['fields' => [
new FieldDescriptor('f1', [
'type' => 'string',
'min' => 100,
]),
]]);
$b = new SchemaDescriptor('pbj:vendor:package:category:message:1-0-1', ['fields' => [
new FieldDescriptor('f1', [
'type' => 'string',
'min' => 100,
]),
]]);
$asset = new FieldMinLength();
$asset->validate($a, $b);
$this->assertTrue(true);
}
public function testValidateLessThan()
{
$a = new SchemaDescriptor('pbj:vendor:package:category:message:1-0-0', ['fields' => [
new FieldDescriptor('f1', [
'type' => 'string',
'min' => 100,
]),
]]);
$b = new SchemaDescriptor('pbj:vendor:package:category:message:1-0-1', ['fields' => [
new FieldDescriptor('f1', [
'type' => 'string',
'min' => 10,
]),
]]);
$asset = new FieldMinLength();
$asset->validate($a, $b);
$this->assertTrue(true);
}
/**
* @expectedException \Gdbots\Pbjc\Exception\ValidatorException
*/
public function testValidateException()
{
$a = new SchemaDescriptor('pbj:vendor:package:category:message:1-0-0', ['fields' => [
new FieldDescriptor('f1', [
'type' => 'string',
'min' => 100,
]),
]]);
$b = new SchemaDescriptor('pbj:vendor:package:category:message:1-0-1', ['fields' => [
new FieldDescriptor('f1', [
'type' => 'string',
'min' => 1000,
]),
]]);
$asset = new FieldMinLength();
$asset->validate($a, $b);
}
}