cvs: pear /File_Archive Archive.php /File_Archive/tests test.php
| From: | Vincent Lascaux | Date: | Wed, 18 May 2005 16:17:35 +0000 |
| Subject: | cvs: pear /File_Archive Archive.php /File_Archive/tests test.php | ||
| Groups: | php.pear.cvs | ||
| Request: | Send a blank email to pear-cvs+get-31907@lists.php.net to get a copy of this message | ||
vincentlascaux Wed May 18 12:17:35 2005 EDT
Modified files:
/pear/File_Archive Archive.php
/pear/File_Archive/tests test.php
Log:
+ Better error handling in File_Archive::readMulti
+ Better error handling in test file
http://cvs.php.net/diff.php/pear/File_Archive/Archive.php?r1=1.40&r2=1.41&ty=u
Index: pear/File_Archive/Archive.php
diff -u pear/File_Archive/Archive.php:1.40 pear/File_Archive/Archive.php:1.41
--- pear/File_Archive/Archive.php:1.40 Wed May 18 05:44:45 2005
+++ pear/File_Archive/Archive.php Wed May 18 12:17:35 2005
@@ -27,7 +27,7 @@
* @author Vincent Lascaux <vincentlascaux@php.net>
* @copyright 1997-2005 The PHP Group
* @license http://www.gnu.org/copyleft/lesser.html LGPL
- * @version CVS: $Id: Archive.php,v 1.40 2005/05/18 09:44:45 vincentlascaux Exp $
+ * @version CVS: $Id: Archive.php,v 1.41 2005/05/18 16:17:35 vincentlascaux Exp $
* @link http://pear.php.net/package/File_Archive
*/
@@ -735,6 +735,13 @@
*/
function toMulti(&$a, &$b)
{
+ if (PEAR::isError($a)) {
+ return $a;
+ }
+ if (PEAR::isError($b)) {
+ return $b;
+ }
+
require_once "File/Archive/Writer/Multi.php";
return new File_Archive_Writer_Multi($a, $b);
}
http://cvs.php.net/diff.php/pear/File_Archive/tests/test.php?r1=1.30&r2=1.31&ty=u
Index: pear/File_Archive/tests/test.php
diff -u pear/File_Archive/tests/test.php:1.30 pear/File_Archive/tests/test.php:1.31
--- pear/File_Archive/tests/test.php:1.30 Wed May 18 05:44:47 2005
+++ pear/File_Archive/tests/test.php Wed May 18 12:17:35 2005
@@ -212,35 +212,40 @@
//TODO: test the toMail
function testToMemory()
{
- $source = File_Archive::read('test.php');
- $dest = File_Archive::toMemory();
-
- $source->extract($dest);
- $this->assertEquals(file_get_contents('test.php'), $dest->getData());
+ $this->assertTrue(
+ !PEAR::isError(
+ File_Archive::extract(
+ File_Archive::read('test.php'),
+ $dest = File_Archive::toMemory()
+ )
+ ) &&
+ file_get_contents('test.php') == $dest->getData()
+ );
}
function _testArchive($extension)
{
$filename = "test.$extension";
- $source = File_Archive::readMulti(array('test.php', '../Archive'));
- $generated = $extension=='gz' || $extension=='bz2' ? 'test' :
'test.php';
-
- $source->extract(
- File_Archive::toArchive(
- $filename,
- $compressed = File_Archive::toMemory()
- )
+ $this->assertTrue(
+ !PEAR::isError(
+ File_Archive::extract(
+ File_Archive::read('test.php'),
+ File_Archive::toArchive(
+ $filename,
+ $compressed = File_Archive::toMemory()
+ )
+ )
+ ) &&
+ !PEAR::isError(
+ File_Archive::extract(
+ File_Archive::readSource(
+ $compressed->makeReader(), "$filename/test.php")
+ ),
+ File_Archive::toVariable($uncompressed)
+ )
+ ) &&
+ $uncompressed == file_get_contents('test.php')
);
-
- require_once "File/Archive/Reader/Uncompress.php";
-
- $compressedReader = $compressed->makeReader();
- $source = File_Archive::readSource($compressedReader, "$filename/$generated");
-
- if(PEAR::isError($source))
- echo ($extension);
- $source->extract(File_Archive::toVariable($uncompressed));
- $this->assertEquals(file_get_contents('test.php'), $uncompressed);
}
function testTar() { $this->_testArchive('tar'); }
function testZip() { $this->_testArchive('zip'); }
@@ -248,7 +253,7 @@
function testTgz() { $this->_testArchive('tgz'); }
function testTbz() { $this->_testArchive('tbz'); }
function _testBZ2() { $this->_testArchive('bz2'); }
- function testWriteGZip2()
+ function _testWriteGZip2()
{
//Build the writer
$writer = File_Archive::toArchive('example1.tgz', File_Archive::toFiles());
@@ -272,32 +277,40 @@
}
function testDirectories()
{
- $error = File_Archive::extract(
- File_Archive::read('../Archve'),
- File_Archive::toArchive('up.tbz', File_Archive::toFiles())
+ $this->assertTrue(
+ !PEAR::isError(
+ File_Archive::extract(
+ File_Archive::read('../Archve'),
+ File_Archive::toArchive('up.tbz', File_Archive::toFiles())
+ )
+ ) &&
+ !PEAR::isError(
+ $source = File_Archive::read('up.tbz/')
+ ) &&
+ !PEAR::isError(
+ $appendedData = File_Archive::read('test.php')
+ ) &&
+ !PEAR::isError(
+ $appendedData->extract($source->makeAppendWriter())
+ )
);
- if (PEAR::isError($error)) {
- var_dump($error);
- }
- $this->assertFalse(PEAR::isError($error));
-
- $source = File_Archive::read('up.tbz/');
- $appendedData = File_Archive::read('test.php');
-
- $appendedData->extract($source->makeAppendWriter());
}
function testMultiWriter()
{
- $source = File_Archive::readMemory("ABCDEF", "A.txt");
- $source->extract(
- File_Archive::toMulti(
- $a = File_Archive::toMemory(),
- $b = File_Archive::toMemory()
- )
+ $this->assertTrue(
+ !PEAR::isError(
+ File_Archive::extract(
+ File_Archive::readMemory("ABCDEF", "A.txt"),
+ File_Archive::toMulti(
+ File_Archive::toVariable($a),
+ File_Archive::toVariable($b)
+ )
+ )
+ ) &&
+ $a == 'ABCDEF' &&
+ $b == 'ABCDEF'
);
- $this->assertEquals($a->getData(), "ABCDEF");
- $this->assertEquals($b->getData(), "ABCDEF");
}
function _testReadArchive()
{