fix default format conversion, increase code coverage

This commit is contained in:
Greg Beaver 2008-04-23 18:44:43 +00:00
parent 26d2062305
commit ab1d8adb96
3 changed files with 19 additions and 4 deletions

View File

@ -121,9 +121,10 @@
#define PHAR_ENT_PERM_DEF_FILE 0x000001B6
#define PHAR_ENT_PERM_DEF_DIR 0x000001FF
#define PHAR_FORMAT_PHAR 0
#define PHAR_FORMAT_TAR 1
#define PHAR_FORMAT_ZIP 2
#define PHAR_FORMAT_SAME 0
#define PHAR_FORMAT_PHAR 1
#define PHAR_FORMAT_TAR 2
#define PHAR_FORMAT_ZIP 3
#define TAR_FILE '0'
#define TAR_LINK '1'

View File

@ -1874,6 +1874,7 @@ PHP_METHOD(Phar, convertToExecutable)
switch (format) {
case 9021976:
case PHAR_FORMAT_SAME: /* null is converted to 0 */
/* by default, use the existing format */
if (phar_obj->arc.archive->is_tar) {
format = PHAR_FORMAT_TAR;
@ -1966,6 +1967,7 @@ PHP_METHOD(Phar, convertToData)
switch (format) {
case 9021976:
case PHAR_FORMAT_SAME: /* null is converted to 0 */
/* by default, use the existing format */
if (phar_obj->arc.archive->is_tar) {
format = PHAR_FORMAT_TAR;

View File

@ -41,7 +41,13 @@ $phar = $tbz->convertToExecutable(Phar::PHAR, Phar::NONE);
echo $phar->getPath() . "\n";
$phar['a'] = 'hi';
$phar['a']->setMetadata('hi');
$zip = $phar->convertToExecutable(Phar::ZIP);
echo $zip->getPath() . "\n";
echo $zip['a']->getMetadata() . "\n";
$tar = $phar->convertToExecutable(Phar::TAR);
echo $tar->getPath() . "\n";
$tgz = $tar->convertToExecutable(null, Phar::GZ);
echo $tgz->getPath() . "\n";
?>
===DONE===
--CLEAN--
@ -52,7 +58,9 @@ unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.tar.gz');
unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '.tar.bz2');
unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '2.tbz');
unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '2.phar');
unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '2.tar');
unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '2.phar.tar');
unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '2.phar.zip');
unlink(dirname(__FILE__) . '/' . basename(__FILE__, '.clean.php') . '2.phar.tar.gz');
__HALT_COMPILER();
?>
--EXPECTF--
@ -61,4 +69,8 @@ __HALT_COMPILER();
%sphar_convert_again.tar.bz2
Unable to add newly converted phar "%sphar_convert_again.phar" to the list of phars, a phar with that name already exists
%sphar_convert_again2.phar
%sphar_convert_again2.phar.zip
hi
%sphar_convert_again2.phar.tar
%sphar_convert_again2.phar.tar.gz
===DONE===