]> granicus.if.org Git - php/commitdiff
- Add new tests for PDO_FETCH_INTO
authorMarcus Boerger <helly@php.net>
Tue, 24 May 2005 12:39:09 +0000 (12:39 +0000)
committerMarcus Boerger <helly@php.net>
Tue, 24 May 2005 12:39:09 +0000 (12:39 +0000)
ext/pdo/tests/pdo_025.inc [new file with mode: 0755]
ext/pdo_mysql/tests/pdo_025.phpt [new file with mode: 0755]
ext/pdo_pgsql/tests/pdo_025.phpt [new file with mode: 0755]
ext/pdo_sqlite/tests/pdo_025.phpt [new file with mode: 0755]
ext/sqlite/tests/pdo/pdo_025.phpt [new file with mode: 0755]

diff --git a/ext/pdo/tests/pdo_025.inc b/ext/pdo/tests/pdo_025.inc
new file mode 100755 (executable)
index 0000000..16b8619
--- /dev/null
@@ -0,0 +1,51 @@
+<?php # vim:ft=php
+
+require_once('pdo.inc');
+
+set_sql('create1',  'CREATE TABLE test(id INT NOT NULL PRIMARY KEY, val VARCHAR(10), val2 VARCHAR(16))');
+set_sql('insert1', "INSERT INTO test VALUES(?, ?, ?)"); 
+set_sql('select',  'SELECT * FROM test');
+
+$data = array(
+    array('10', 'Abc', 'zxy'),
+    array('20', 'Def', 'wvu'),
+    array('30', 'Ghi', 'tsr'),
+    array('40', 'Jkl', 'qpo'),
+    array('50', 'Mno', 'nml'),
+    array('60', 'Pqr', 'kji'),
+);
+
+$DB->exec($SQL['create1']);
+
+// Insert using question mark placeholders
+$stmt = $DB->prepare($SQL['insert1']);
+foreach ($data as $row) {
+    $stmt->execute($row);
+}
+
+class Test {
+       public $id, $val, $val2;
+}
+
+$stmt = $DB->prepare($SQL['select']);
+$stmt->setFetchMode(PDO_FETCH_INTO, new Test);
+$stmt->execute();
+
+foreach($stmt as $obj) {
+       var_dump($obj);
+}
+
+echo "===FAIL===\n";
+
+class Fail {
+       protected $id;
+       public $val, $val2;
+}
+
+$stmt->setFetchMode(PDO_FETCH_INTO, new Fail);
+$stmt->execute();
+
+foreach($stmt as $obj) {
+       var_dump($obj);
+}
+?>
diff --git a/ext/pdo_mysql/tests/pdo_025.phpt b/ext/pdo_mysql/tests/pdo_025.phpt
new file mode 100755 (executable)
index 0000000..371dc7e
--- /dev/null
@@ -0,0 +1,68 @@
+--TEST--
+PDO_MySQL: PDO_FETCH_INTO
+--SKIPIF--
+<?php # vim:ft=php
+require_once('skipif.inc'); ?>
+--FILE--
+<?php
+
+require_once('connection.inc');
+require_once('prepare.inc');
+
+require_once($PDO_TESTS . 'pdo_025.inc');
+
+?>
+===DONE===
+<?php exit(0); ?>
+--EXPECTF--
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "10"
+  ["val"]=>
+  string(3) "Abc"
+  ["val2"]=>
+  string(3) "zxy"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "20"
+  ["val"]=>
+  string(3) "Def"
+  ["val2"]=>
+  string(3) "wvu"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "30"
+  ["val"]=>
+  string(3) "Ghi"
+  ["val2"]=>
+  string(3) "tsr"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "40"
+  ["val"]=>
+  string(3) "Jkl"
+  ["val2"]=>
+  string(3) "qpo"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "50"
+  ["val"]=>
+  string(3) "Mno"
+  ["val2"]=>
+  string(3) "nml"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "60"
+  ["val"]=>
+  string(3) "Pqr"
+  ["val2"]=>
+  string(3) "kji"
+}
+===FAIL===
+
+Fatal error: Cannot access protected property Fail::$id in %spdo_025.inc on line %d
diff --git a/ext/pdo_pgsql/tests/pdo_025.phpt b/ext/pdo_pgsql/tests/pdo_025.phpt
new file mode 100755 (executable)
index 0000000..1c0892e
--- /dev/null
@@ -0,0 +1,68 @@
+--TEST--
+PDO_PGSQL: PDO_FETCH_INTO
+--SKIPIF--
+<?php # vim:ft=php
+require_once('skipif.inc'); ?>
+--FILE--
+<?php
+
+require_once('connection.inc');
+require_once('prepare.inc');
+
+require_once($PDO_TESTS . 'pdo_025.inc');
+
+?>
+===DONE===
+<?php exit(0); ?>
+--EXPECTF--
+object(Test)#%d (3) {
+  ["id"]=>
+  int(10)
+  ["val"]=>
+  string(3) "Abc"
+  ["val2"]=>
+  string(3) "zxy"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  int(20)
+  ["val"]=>
+  string(3) "Def"
+  ["val2"]=>
+  string(3) "wvu"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  int(30)
+  ["val"]=>
+  string(3) "Ghi"
+  ["val2"]=>
+  string(3) "tsr"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  int(40)
+  ["val"]=>
+  string(3) "Jkl"
+  ["val2"]=>
+  string(3) "qpo"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  int(50)
+  ["val"]=>
+  string(3) "Mno"
+  ["val2"]=>
+  string(3) "nml"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  int(60)
+  ["val"]=>
+  string(3) "Pqr"
+  ["val2"]=>
+  string(3) "kji"
+}
+===FAIL===
+
+Fatal error: Cannot access protected property Fail::$id in %spdo_025.inc on line %d
diff --git a/ext/pdo_sqlite/tests/pdo_025.phpt b/ext/pdo_sqlite/tests/pdo_025.phpt
new file mode 100755 (executable)
index 0000000..51b1ecc
--- /dev/null
@@ -0,0 +1,68 @@
+--TEST--
+PDO_SQLite: PDO_FETCH_INTO
+--SKIPIF--
+<?php # vim:ft=php
+require_once('skipif.inc'); ?>
+--FILE--
+<?php
+
+require_once('connection.inc');
+require_once('prepare.inc');
+
+require_once($PDO_TESTS . 'pdo_025.inc');
+
+?>
+===DONE===
+<?php exit(0); ?>
+--EXPECTF--
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "10"
+  ["val"]=>
+  string(3) "Abc"
+  ["val2"]=>
+  string(3) "zxy"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "20"
+  ["val"]=>
+  string(3) "Def"
+  ["val2"]=>
+  string(3) "wvu"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "30"
+  ["val"]=>
+  string(3) "Ghi"
+  ["val2"]=>
+  string(3) "tsr"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "40"
+  ["val"]=>
+  string(3) "Jkl"
+  ["val2"]=>
+  string(3) "qpo"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "50"
+  ["val"]=>
+  string(3) "Mno"
+  ["val2"]=>
+  string(3) "nml"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "60"
+  ["val"]=>
+  string(3) "Pqr"
+  ["val2"]=>
+  string(3) "kji"
+}
+===FAIL===
+
+Fatal error: Cannot access protected property Fail::$id in %spdo_025.inc on line %d
diff --git a/ext/sqlite/tests/pdo/pdo_025.phpt b/ext/sqlite/tests/pdo/pdo_025.phpt
new file mode 100755 (executable)
index 0000000..1746361
--- /dev/null
@@ -0,0 +1,68 @@
+--TEST--
+PDO_SQLite2: PDO_FETCH_INTO
+--SKIPIF--
+<?php # vim:ft=php
+require_once('skipif.inc'); ?>
+--FILE--
+<?php
+
+require_once('connection.inc');
+require_once('prepare.inc');
+
+require_once($PDO_TESTS . 'pdo_025.inc');
+
+?>
+===DONE===
+<?php exit(0); ?>
+--EXPECTF--
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "10"
+  ["val"]=>
+  string(3) "Abc"
+  ["val2"]=>
+  string(3) "zxy"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "20"
+  ["val"]=>
+  string(3) "Def"
+  ["val2"]=>
+  string(3) "wvu"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "30"
+  ["val"]=>
+  string(3) "Ghi"
+  ["val2"]=>
+  string(3) "tsr"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "40"
+  ["val"]=>
+  string(3) "Jkl"
+  ["val2"]=>
+  string(3) "qpo"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "50"
+  ["val"]=>
+  string(3) "Mno"
+  ["val2"]=>
+  string(3) "nml"
+}
+object(Test)#%d (3) {
+  ["id"]=>
+  string(2) "60"
+  ["val"]=>
+  string(3) "Pqr"
+  ["val2"]=>
+  string(3) "kji"
+}
+===FAIL===
+
+Fatal error: Cannot access protected property Fail::$id in %spdo_025.inc on line %d