summaryrefslogtreecommitdiff
path: root/ext/pdo/tests/pdo_014.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/pdo/tests/pdo_014.phpt')
-rw-r--r--ext/pdo/tests/pdo_014.phpt101
1 files changed, 0 insertions, 101 deletions
diff --git a/ext/pdo/tests/pdo_014.phpt b/ext/pdo/tests/pdo_014.phpt
deleted file mode 100644
index 1d21cb4a00..0000000000
--- a/ext/pdo/tests/pdo_014.phpt
+++ /dev/null
@@ -1,101 +0,0 @@
---TEST--
-PDO Common: PDOStatement SPL iterator
---SKIPIF--
-<?php # vim:ft=php
-if (!extension_loaded('pdo')) die('skip');
-if (!extension_loaded('SPL')) print 'skip SPL not available';
-if (!class_exists('IteratorIterator')) die('skip IteratorIterator class not present');
-$dir = getenv('REDIR_TEST_DIR');
-if (false == $dir) die('skip no driver');
-require_once $dir . 'pdo_test.inc';
-PDOTest::skip();
-?>
---FILE--
-<?php
-require getenv('REDIR_TEST_DIR') . 'pdo_test.inc';
-$db = PDOTest::factory();
-
-$db->exec('CREATE TABLE test(id int NOT NULL PRIMARY KEY, val VARCHAR(10), grp VARCHAR(10))');
-$db->exec('INSERT INTO test VALUES(1, \'A\', \'Group1\')');
-$db->exec('INSERT INTO test VALUES(2, \'B\', \'Group2\')');
-$SELECT = 'SELECT val, grp FROM test';
-
-class Test
-{
- function __construct($name = 'N/A')
- {
- echo __METHOD__ . "($name)\n";
- }
-}
-
-$stmt = $db->query($SELECT, PDO_FETCH_CLASS, 'Test', array('WOW'));
-
-$it = new IteratorIterator($stmt); /* check if we can convert that thing */
-
-/*** HINT: If YOU plan to do so remember not to call rewind() -> see below ***/
-
-foreach($it as $data)
-{
- var_dump($data);
-}
-
-$it->next(); /* must be allowed */
-var_dump($it->current()); /* must return NULL */
-var_dump($it->valid()); /* must return false */
-
-class PDOStatementAggregate extends PDOStatement implements IteratorAggregate
-{
- private function __construct()
- {
- echo __METHOD__ . "\n";
- $this->setFetchMode(PDO_FETCH_NUM);
- /* default fetch mode is BOTH, so we see if the ctor can overwrite that */
- }
-
- function getIterator()
- {
- echo __METHOD__ . "\n";
- $this->execute();
- return new IteratorIterator($this, 'PDOStatement');
- }
-}
-
-$stmt = $db->prepare($SELECT, array(PDO_ATTR_STATEMENT_CLASS=>array('PDOStatementAggregate')));
-
-foreach($stmt as $data)
-{
- var_dump($data);
-}
-
-?>
---EXPECTF--
-Test::__construct(WOW)
-object(Test)#4 (2) {
- ["val"]=>
- string(1) "A"
- ["grp"]=>
- string(6) "Group1"
-}
-Test::__construct(WOW)
-object(Test)#6 (2) {
- ["val"]=>
- string(1) "B"
- ["grp"]=>
- string(6) "Group2"
-}
-NULL
-bool(false)
-PDOStatementAggregate::__construct
-PDOStatementAggregate::getIterator
-array(2) {
- [0]=>
- string(1) "A"
- [1]=>
- string(6) "Group1"
-}
-array(2) {
- [0]=>
- string(1) "B"
- [1]=>
- string(6) "Group2"
-}