X-Git-Url: http://www.aleph1.co.uk/gitweb/?a=blobdiff_plain;ds=sidebyside;f=vendor%2Fsymfony%2Fvar-dumper%2FTests%2FCaster%2FPdoCasterTest.php;fp=vendor%2Fsymfony%2Fvar-dumper%2FTests%2FCaster%2FPdoCasterTest.php;h=ec04e49dc3fd78e9286199b1782f7f1ea288366a;hb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae;hp=0000000000000000000000000000000000000000;hpb=57c063afa3f66b07c4bbddc2d6129a96d90f0aad;p=yaffs-website diff --git a/vendor/symfony/var-dumper/Tests/Caster/PdoCasterTest.php b/vendor/symfony/var-dumper/Tests/Caster/PdoCasterTest.php new file mode 100644 index 000000000..ec04e49dc --- /dev/null +++ b/vendor/symfony/var-dumper/Tests/Caster/PdoCasterTest.php @@ -0,0 +1,58 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +namespace Symfony\Component\VarDumper\Tests\Caster; + +use PHPUnit\Framework\TestCase; +use Symfony\Component\VarDumper\Caster\PdoCaster; +use Symfony\Component\VarDumper\Cloner\Stub; + +/** + * @author Nicolas Grekas + */ +class PdoCasterTest extends TestCase +{ + /** + * @requires extension pdo_sqlite + */ + public function testCastPdo() + { + $pdo = new \PDO('sqlite::memory:'); + $pdo->setAttribute(\PDO::ATTR_STATEMENT_CLASS, array('PDOStatement', array($pdo))); + + $cast = PdoCaster::castPdo($pdo, array(), new Stub(), false); + + $this->assertInstanceOf('Symfony\Component\VarDumper\Caster\EnumStub', $cast["\0~\0attributes"]); + + $attr = $cast["\0~\0attributes"] = $cast["\0~\0attributes"]->value; + $this->assertInstanceOf('Symfony\Component\VarDumper\Caster\ConstStub', $attr['CASE']); + $this->assertSame('NATURAL', $attr['CASE']->class); + $this->assertSame('BOTH', $attr['DEFAULT_FETCH_MODE']->class); + + $xCast = array( + "\0~\0inTransaction" => $pdo->inTransaction(), + "\0~\0attributes" => array( + 'CASE' => $attr['CASE'], + 'ERRMODE' => $attr['ERRMODE'], + 'PERSISTENT' => false, + 'DRIVER_NAME' => 'sqlite', + 'ORACLE_NULLS' => $attr['ORACLE_NULLS'], + 'CLIENT_VERSION' => $pdo->getAttribute(\PDO::ATTR_CLIENT_VERSION), + 'SERVER_VERSION' => $pdo->getAttribute(\PDO::ATTR_SERVER_VERSION), + 'STATEMENT_CLASS' => array('PDOStatement'), + 'DEFAULT_FETCH_MODE' => $attr['DEFAULT_FETCH_MODE'], + ), + ); + unset($cast["\0~\0attributes"]['STATEMENT_CLASS'][1]); + + $this->assertSame($xCast, $cast); + } +}