summaryrefslogtreecommitdiff
path: root/ext/spl/tests/iterator_041b.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/spl/tests/iterator_041b.phpt')
-rwxr-xr-xext/spl/tests/iterator_041b.phpt107
1 files changed, 0 insertions, 107 deletions
diff --git a/ext/spl/tests/iterator_041b.phpt b/ext/spl/tests/iterator_041b.phpt
deleted file mode 100755
index 9afb935266..0000000000
--- a/ext/spl/tests/iterator_041b.phpt
+++ /dev/null
@@ -1,107 +0,0 @@
---TEST--
-SPL: iterator_to_array() and exceptions from delayed destruct
---SKIPIF--
-<?php if (!extension_loaded("spl")) print "skip"; ?>
---FILE--
-<?php
-
-class MyArrayIterator extends ArrayIterator
-{
- static protected $fail = 0;
- public $state;
-
- static function fail($state, $method)
- {
- if (self::$fail == $state)
- {
- throw new Exception("State $state: $method()");
- }
- }
-
- function __construct()
- {
- $this->state = MyArrayIterator::$fail;
- self::fail(0, __FUNCTION__);
- parent::__construct(array(1, 2));
- self::fail(1, __FUNCTION__);
- }
-
- function rewind()
- {
- self::fail(2, __FUNCTION__);
- return parent::rewind();
- }
-
- function valid()
- {
- self::fail(3, __FUNCTION__);
- return parent::valid();
- }
-
- function current()
- {
- self::fail(4, __FUNCTION__);
- return parent::current();
- }
-
- function key()
- {
- self::fail(5, __FUNCTION__);
- return parent::key();
- }
-
- function next()
- {
- self::fail(6, __FUNCTION__);
- return parent::next();
- }
-
- function __destruct()
- {
- self::fail(7, __FUNCTION__);
- }
-
- static function test($func, $skip = null)
- {
- echo "===$func===\n";
- self::$fail = 0;
- while(self::$fail < 10)
- {
- try
- {
- var_dump($func(new MyArrayIterator()));
- break;
- }
- catch (Exception $e)
- {
- echo $e->getMessage() . "\n";
- }
- if (isset($skip[self::$fail]))
- {
- self::$fail = $skip[self::$fail];
- }
- else
- {
- self::$fail++;
- }
- }
- }
-}
-
-MyArrayIterator::test('iterator_to_array');
-MyArrayIterator::test('iterator_count', array(3 => 6));
-
-?>
-===DONE===
-<?php exit(0); ?>
---EXPECTF--
-===iterator_to_array===
-State 0: __construct()
-State 1: __construct()
-State 2: rewind()
-State 3: valid()
-State 4: current()
-State 5: key()
-State 6: next()
-
-Fatal error: Ignoring exception from MyArrayIterator::__destruct() while an exception is already active (Uncaught Exception in %s on line %d) in %siterator_041b.php on line %d