]> granicus.if.org Git - php/commitdiff
fix test, new test
authorGreg Beaver <cellog@php.net>
Thu, 13 Dec 2007 01:12:10 +0000 (01:12 +0000)
committerGreg Beaver <cellog@php.net>
Thu, 13 Dec 2007 01:12:10 +0000 (01:12 +0000)
ext/phar/tests/phar_buildfromiterator4.phpt
ext/phar/tests/phar_buildfromiterator5.phpt [new file with mode: 0644]

index 41a41cd190af1d8ed4162608118b16df5e622601..8362384988673b916f71233f40588fda498eaf36 100644 (file)
@@ -1,5 +1,5 @@
 --TEST--
-Phar::buildFromIterator() iterator, nothng passed in
+Phar::buildFromIterator() iterator, 1 file passed in
 --SKIPIF--
 <?php if (!extension_loaded("phar")) print "skip"; ?>
 --INI--
@@ -57,7 +57,7 @@ current
 key
 next
 valid
-array (1) {
+array(1) {
   ["a"]=>
   string(%d) "%sphar_buildfromiterator4.phpt"
 }
diff --git a/ext/phar/tests/phar_buildfromiterator5.phpt b/ext/phar/tests/phar_buildfromiterator5.phpt
new file mode 100644 (file)
index 0000000..04fc042
--- /dev/null
@@ -0,0 +1,59 @@
+--TEST--
+Phar::buildFromIterator() iterator, iterator returns non-string
+--SKIPIF--
+<?php if (!extension_loaded("phar")) print "skip"; ?>
+--INI--
+phar.require_hash=0
+phar.readonly=0
+--FILE--
+<?php
+class myIterator implements Iterator
+{
+    var $a;
+    function __construct(array $a)
+    {
+        $this->a = $a;
+    }
+    function next() {
+        echo "next\n";
+        return next($this->a);
+    }
+    function current() {
+        echo "current\n";
+        return current($this->a);
+    }
+    function key() {
+        echo "key\n";
+        return key($this->a);
+    }
+    function valid() {
+        echo "valid\n";
+        return current($this->a);
+    }
+    function rewind() {
+        echo "rewind\n";
+        return reset($this->a);
+    }
+}
+try {
+       chdir(dirname(__FILE__));
+       $phar = new Phar(dirname(__FILE__) . '/buildfromiterator.phar');
+       var_dump($phar->buildFromIterator(new myIterator(array('a' => new stdClass))));
+} catch (Exception $e) {
+       var_dump(get_class($e));
+       echo $e->getMessage() . "\n";
+}
+?>
+===DONE===
+--CLEAN--
+<?php 
+unlink(dirname(__FILE__) . '/buildfromiterator.phar');
+__HALT_COMPILER();
+?>
+--EXPECTF--
+rewind
+valid
+current
+string(24) "UnexpectedValueException"
+Iterator myIterator returned an invalid value (must return a string)
+===DONE===