X-Git-Url: http://git.inspyration.org/?a=blobdiff_plain;f=vendor%2Fdoctrine%2Fdbal%2Ftests%2FDoctrine%2FTests%2FDBAL%2FUtilTest.php;fp=vendor%2Fdoctrine%2Fdbal%2Ftests%2FDoctrine%2FTests%2FDBAL%2FUtilTest.php;h=b793e357001c26516cbe78496fa9c3b6c35b90f7;hb=8b04b2d11798dee4f3e1358e4f43e97a6df851f6;hp=0000000000000000000000000000000000000000;hpb=73568cf05a785a45f94ca3f2351d9e07bf917958;p=zf2.biz%2Fgalerie.git diff --git a/vendor/doctrine/dbal/tests/Doctrine/Tests/DBAL/UtilTest.php b/vendor/doctrine/dbal/tests/Doctrine/Tests/DBAL/UtilTest.php new file mode 100644 index 0000000..b793e35 --- /dev/null +++ b/vendor/doctrine/dbal/tests/Doctrine/Tests/DBAL/UtilTest.php @@ -0,0 +1,78 @@ + ':param1') + ), + array( + 'SELECT name FROM users WHERE id = ? AND status = ?', + 'SELECT name FROM users WHERE id = :param1 AND status = :param2', + array(1 => ':param1', 2 => ':param2'), + ), + array( + "UPDATE users SET name = '???', status = ?", + "UPDATE users SET name = '???', status = :param1", + array(1 => ':param1'), + ), + array( + "UPDATE users SET status = ?, name = '???'", + "UPDATE users SET status = :param1, name = '???'", + array(1 => ':param1'), + ), + array( + "UPDATE users SET foo = ?, name = '???', status = ?", + "UPDATE users SET foo = :param1, name = '???', status = :param2", + array(1 => ':param1', 2 => ':param2'), + ), + array( + 'UPDATE users SET name = "???", status = ?', + 'UPDATE users SET name = "???", status = :param1', + array(1 => ':param1'), + ), + array( + 'UPDATE users SET status = ?, name = "???"', + 'UPDATE users SET status = :param1, name = "???"', + array(1 => ':param1'), + ), + array( + 'UPDATE users SET foo = ?, name = "???", status = ?', + 'UPDATE users SET foo = :param1, name = "???", status = :param2', + array(1 => ':param1', 2 => ':param2'), + ), + array( + 'SELECT * FROM users WHERE id = ? AND name = "" AND status = ?', + 'SELECT * FROM users WHERE id = :param1 AND name = "" AND status = :param2', + array(1 => ':param1', 2 => ':param2'), + ), + array( + "SELECT * FROM users WHERE id = ? AND name = '' AND status = ?", + "SELECT * FROM users WHERE id = :param1 AND name = '' AND status = :param2", + array(1 => ':param1', 2 => ':param2'), + ) + ); + } + + /** + * @dataProvider dataConvertPositionalToNamedParameters + * @param string $inputSQL + * @param string $expectedOutputSQL + * @param array $expectedOutputParamsMap + */ + public function testConvertPositionalToNamedParameters($inputSQL, $expectedOutputSQL, $expectedOutputParamsMap) + { + list($statement, $params) = \Doctrine\DBAL\Driver\OCI8\OCI8Statement::convertPositionalToNamedPlaceholders($inputSQL); + + $this->assertEquals($expectedOutputSQL, $statement); + $this->assertEquals($expectedOutputParamsMap, $params); + } +} \ No newline at end of file