Validation Package Testing

- Added More Unit Tests to Validation Classes
- Updated Logic accordingly
This commit is contained in:
japatel
2015-01-09 16:56:38 -06:00
parent 095ab24b62
commit f7cfd0faa9
6 changed files with 170 additions and 9 deletions

View File

@@ -0,0 +1,57 @@
<?php
namespace PayPal\Test\Validation;
use PayPal\Validation\JsonValidator;
class JsonValidatorTest extends \PHPUnit_Framework_TestCase
{
public static function positiveProvider()
{
return array(
array(null),
array(''),
array("{}"),
array('{"json":"value", "bool":false, "int":1, "float": 0.123, "array": [{"json":"value", "bool":false, "int":1, "float": 0.123},{"json":"value", "bool":false, "int":1, "float": 0.123} ]}')
);
}
public static function invalidProvider()
{
return array(
array('{'),
array('}'),
array(' '),
array(array('1' => '23')),
array('{"json":"value, "bool":false, "int":1, "float": 0.123, "array": [{"json":"value, "bool":false, "int":1, "float": 0.123}"json":"value, "bool":false, "int":1, "float": 0.123} ]}')
);
}
/**
*
* @dataProvider positiveProvider
*/
public function testValidate($input)
{
$this->assertTrue(JsonValidator::validate($input));
}
/**
*
* @dataProvider invalidProvider
* @expectedException \InvalidArgumentException
*/
public function testInvalidJson($input)
{
JsonValidator::validate($input);
}
/**
*
* @dataProvider invalidProvider
*/
public function testInvalidJsonSilent($input)
{
$this->assertFalse(JsonValidator::validate($input, true));
}
}