TimeTrex Community Edition v16.2.0
This commit is contained in:
33
vendor/pear/archive_tar/tests/512nbytesfile.phpt
vendored
Normal file
33
vendor/pear/archive_tar/tests/512nbytesfile.phpt
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
--TEST--
|
||||
test file size that happens to be 512 * n bytes
|
||||
--SKIPIF--
|
||||
--FILE--
|
||||
<?php
|
||||
$dirname = dirname(__FILE__);
|
||||
require_once $dirname . '/setup.php.inc';
|
||||
|
||||
$tar = new Archive_Tar($dirname . '/512nbytesfile.tar.gz', null, 2048);
|
||||
$tar->add($dirname .'/testblock3');
|
||||
$tar->listContent();
|
||||
$phpunit->assertNoErrors('after tar archive listing');
|
||||
|
||||
$returnval = shell_exec('tar -Ptf ' . $dirname . '/512nbytesfile.tar.gz | sort');
|
||||
$phpunit->assertNoErrors('after shell tar listing');
|
||||
|
||||
$expectedvalue =
|
||||
<<< EOD
|
||||
$dirname/testblock3
|
||||
$dirname/testblock3/1024bytes.txt
|
||||
$dirname/testblock3/randombytes.txt
|
||||
EOD;
|
||||
$phpunit->assertEquals($expectedvalue, $returnval, 'wrong output for shell tar verification');
|
||||
|
||||
echo 'test done'
|
||||
?>
|
||||
--CLEAN--
|
||||
<?php
|
||||
$dirname = dirname(__FILE__);
|
||||
@unlink($dirname.'/512nbytesfile.tar.gz');
|
||||
?>
|
||||
--EXPECT--
|
||||
test done
|
46
vendor/pear/archive_tar/tests/deadlinks.phpt
vendored
Normal file
46
vendor/pear/archive_tar/tests/deadlinks.phpt
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
--TEST--
|
||||
test saving of dead symbolic links
|
||||
--SKIPIF--
|
||||
--FILE--
|
||||
<?php
|
||||
require_once dirname(__FILE__) . '/setup.php.inc';
|
||||
|
||||
function fileName($item){
|
||||
return rtrim($item['filename'],'/').' => '.$item['link'];
|
||||
}
|
||||
|
||||
//prepare filesystem
|
||||
@mkdir('test');
|
||||
@mkdir('test/a');
|
||||
@touch('test/b');
|
||||
@symlink('a', 'test/dir_link');
|
||||
@symlink('b', 'test/file_link');
|
||||
@symlink('dead', 'test/dead_link');
|
||||
|
||||
//prepare reference tar
|
||||
system('tar -cf test1.tar test');
|
||||
$tar1=new Archive_Tar('test1.tar');
|
||||
$tar1List=array_map('fileName',$tar1->listContent());
|
||||
//create tar
|
||||
$tar2=new Archive_Tar('test2.tar');
|
||||
$tar2->create(array('test','nonExisting'));// to make sure we are still report nonExisting
|
||||
$tar2List=array_map('fileName',$tar2->listContent());
|
||||
|
||||
$phpunit->assertErrors(array(
|
||||
array('package' => 'PEAR_Error', 'message' => "File 'nonExisting' does not exist")), 'after 1');
|
||||
$phpunit->assertEquals($tar1List, $tar2List, 'bla');
|
||||
echo 'tests done';
|
||||
?>
|
||||
--CLEAN--
|
||||
<?php
|
||||
@rmdir('test/a');
|
||||
@unlink('test/b');
|
||||
@unlink('test/dir_link');
|
||||
@unlink('test/file_link');
|
||||
@unlink('test/dead_link');
|
||||
@rmdir('test');
|
||||
@unlink('test1.tar');
|
||||
@unlink('test2.tar');
|
||||
?>
|
||||
--EXPECT--
|
||||
tests done
|
24
vendor/pear/archive_tar/tests/dirtraversal.phpt
vendored
Normal file
24
vendor/pear/archive_tar/tests/dirtraversal.phpt
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
--TEST--
|
||||
test directory traversal security vulnerability
|
||||
--SKIPIF--
|
||||
--FILE--
|
||||
<?php
|
||||
require_once dirname(__FILE__) . '/setup.php.inc';
|
||||
$me = dirname(__FILE__) . '/testit';
|
||||
$tar = new Archive_Tar(dirname(__FILE__) . '/hamidTARtester2.tar');
|
||||
$tar->listContent();
|
||||
$phpunit->assertErrors(array(
|
||||
array('package' => 'PEAR_Error', 'message' => 'Malicious .tar detected, file "/../../../../../../../../../../../../../../AAAAAAAAAAAAAAAAA/BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB.txt" will not install in desired directory tree')
|
||||
), 'after 1');
|
||||
$tar->extract();
|
||||
$phpunit->assertErrors(array(
|
||||
array('package' => 'PEAR_Error', 'message' => 'Malicious .tar detected, file "/../../../../../../../../../../../../../../AAAAAAAAAAAAAAAAA/BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB.txt" will not install in desired directory tree')
|
||||
), 'after 2');
|
||||
echo 'tests done';
|
||||
?>
|
||||
--CLEAN--
|
||||
<?php
|
||||
@rmdir('AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAa');
|
||||
?>
|
||||
--EXPECT--
|
||||
tests done
|
BIN
vendor/pear/archive_tar/tests/hamidTARtester2.tar
vendored
Normal file
BIN
vendor/pear/archive_tar/tests/hamidTARtester2.tar
vendored
Normal file
Binary file not shown.
20
vendor/pear/archive_tar/tests/invalidblock.phpt
vendored
Normal file
20
vendor/pear/archive_tar/tests/invalidblock.phpt
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
--TEST--
|
||||
test files that happen to contain the endblock
|
||||
--SKIPIF--
|
||||
--FILE--
|
||||
<?php
|
||||
require_once dirname(__FILE__) . '/setup.php.inc';
|
||||
$tar = new Archive_Tar(dirname(__FILE__) . '/testblock.tar.gz');
|
||||
$tar->add(dirname(__FILE__) . '/testblock1');
|
||||
$tar->add(dirname(__FILE__) . '/testblock2');
|
||||
$tar = new Archive_Tar(dirname(__FILE__) . '/testblock.tar.gz');
|
||||
$tar->listContent();
|
||||
$phpunit->assertNoErrors('after');
|
||||
echo 'tests done';
|
||||
?>
|
||||
--CLEAN--
|
||||
<?php
|
||||
@unlink(dirname(__FILE__) . '/testblock.tar.gz');
|
||||
?>
|
||||
--EXPECT--
|
||||
tests done
|
20
vendor/pear/archive_tar/tests/invalidchecksum.phpt
vendored
Normal file
20
vendor/pear/archive_tar/tests/invalidchecksum.phpt
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
--TEST--
|
||||
test saving of dead symbolic links
|
||||
--SKIPIF--
|
||||
--FILE--
|
||||
<?php
|
||||
require_once dirname(__FILE__) . '/setup.php.inc';
|
||||
|
||||
$tar1 = new Archive_Tar(dirname(__FILE__) . '/text-0.txt');
|
||||
$tar1->listContent();
|
||||
|
||||
$phpunit->assertErrors(array(
|
||||
array('package' => 'PEAR_Error', 'message' => "Invalid checksum for file \"4&2Vib~Au.=ZqMTw~=}UoF/~5Gs;JTXF*<FyG\"\n" .
|
||||
'1Hvu#nol Y 21/{G9i|D=$GTI KREuA\wI<wM@dYOKzS{6&]QE8ud|EPb:f?-Gt' . "\n" .
|
||||
'I#)E9)@;_.0y9`P,&jY! :\.J8uG/a8,.vT[$Fe;>}hm\"#xO7:46y_tg6c-[A&S]z0fke?(B6?$:W$X{E%PO>~UWl8(' . "\n" .
|
||||
'.%RWPjN55)cd&?oJPgFFZj#+U<qrF:9yIRe\" : UPJX05Zz extracted')), 'after 1');
|
||||
echo 'tests done';
|
||||
?>
|
||||
--CLEAN--
|
||||
--EXPECT--
|
||||
tests done
|
30
vendor/pear/archive_tar/tests/longfilename.phpt
vendored
Normal file
30
vendor/pear/archive_tar/tests/longfilename.phpt
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
--TEST--
|
||||
test trimming of characters in long filenames
|
||||
--SKIPIF--
|
||||
--FILE--
|
||||
<?php
|
||||
require_once dirname(__FILE__) . '/setup.php.inc';
|
||||
$dirname = dirname(__FILE__) . '/longfilenamedir/';
|
||||
for ($i = 0; $i < 8; $i++) {
|
||||
$dirname .= str_pad('', 64, 'a') . '/';
|
||||
}
|
||||
$longfilename = $dirname . "b ";
|
||||
mkdir($dirname, 0777, true);
|
||||
touch($longfilename);
|
||||
$tar = new Archive_Tar(dirname(__FILE__) . '/testlongfilename.tar');
|
||||
$tar->addModify(array($longfilename), '', dirname(__FILE__));
|
||||
$tar = new Archive_Tar(dirname(__FILE__) . '/testlongfilename.tar');
|
||||
$files = $tar->listContent();
|
||||
$file = reset($files);
|
||||
$lastChar = $file['filename'][strlen($file['filename']) - 1];
|
||||
$phpunit->assertEquals(' ', $lastChar, 'should contain space as last character');
|
||||
echo 'tests done';
|
||||
?>
|
||||
--CLEAN--
|
||||
<?php
|
||||
$dirname = dirname(__FILE__);
|
||||
unlink($dirname . '/testlongfilename.tar');
|
||||
system("rm -r $dirname/longfilenamedir");
|
||||
?>
|
||||
--EXPECT--
|
||||
tests done
|
29
vendor/pear/archive_tar/tests/longsymlinks.phpt
vendored
Normal file
29
vendor/pear/archive_tar/tests/longsymlinks.phpt
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
--TEST--
|
||||
test trimming of characters in long symbolic link targets
|
||||
--SKIPIF--
|
||||
--FILE--
|
||||
<?php
|
||||
require_once dirname(__FILE__) . '/setup.php.inc';
|
||||
$dirname = dirname(__FILE__) . '/longsymlink/';
|
||||
$longfilename = $dirname . str_repeat("b", 120) . " ";
|
||||
$symlinkfilename = $dirname . "a";
|
||||
mkdir($dirname, 0777, true);
|
||||
touch($longfilename);
|
||||
symlink($longfilename, $symlinkfilename);
|
||||
$tar = new Archive_Tar(dirname(__FILE__) . '/testlongsymlink.tar');
|
||||
$tar->addModify(array($longfilename, $symlinkfilename), '', dirname(__FILE__));
|
||||
$tar = new Archive_Tar(dirname(__FILE__) . '/testlongsymlink.tar');
|
||||
$files = $tar->listContent();
|
||||
$file = end($files);
|
||||
$lastChar = $file['link'][strlen($file['link']) - 1];
|
||||
$phpunit->assertEquals(' ', $lastChar, 'should contain space as last character');
|
||||
echo 'tests done';
|
||||
?>
|
||||
--CLEAN--
|
||||
<?php
|
||||
$dirname = dirname(__FILE__);
|
||||
unlink($dirname . '/testlongsymlink.tar');
|
||||
system("rm -r $dirname/longsymlink");
|
||||
?>
|
||||
--EXPECT--
|
||||
tests done
|
18
vendor/pear/archive_tar/tests/out_of_path_fnames.phpt
vendored
Normal file
18
vendor/pear/archive_tar/tests/out_of_path_fnames.phpt
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
--TEST--
|
||||
tests writes to out-of-path filenames
|
||||
--SKIPIF--
|
||||
--FILE--
|
||||
<?php
|
||||
require_once dirname(__FILE__) . '/setup.php.inc';
|
||||
$tar = new Archive_Tar(dirname(__FILE__) . '/out_of_path_symlink.tar');
|
||||
$tar->extract();
|
||||
$phpunit->assertErrors(array(array('package' => 'PEAR_Error', 'message' => "Out-of-path file extraction {symlink --> /tmp/}")), 'after 1');
|
||||
$phpunit->assertFileNotExists('symlink/whatever-filename', 'Out-of-path filename should not have succeeded');
|
||||
echo 'tests done';
|
||||
?>
|
||||
--CLEAN--
|
||||
<?php
|
||||
@unlink("symlink");
|
||||
?>
|
||||
--EXPECT--
|
||||
tests done
|
BIN
vendor/pear/archive_tar/tests/out_of_path_symlink.tar
vendored
Normal file
BIN
vendor/pear/archive_tar/tests/out_of_path_symlink.tar
vendored
Normal file
Binary file not shown.
13
vendor/pear/archive_tar/tests/pax.phpt
vendored
Normal file
13
vendor/pear/archive_tar/tests/pax.phpt
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
--TEST--
|
||||
tests if pax global / extended headers are ignored
|
||||
--SKIPIF--
|
||||
--FILE--
|
||||
<?php
|
||||
require_once dirname(__FILE__) . '/setup.php.inc';
|
||||
$tar = new Archive_Tar(dirname(__FILE__) . '/testpax.tar');
|
||||
$phpunit->assertEquals(1, count($tar->listContent()), "count should be 1");
|
||||
echo 'tests done';
|
||||
?>
|
||||
--CLEAN--
|
||||
--EXPECT--
|
||||
tests done
|
18
vendor/pear/archive_tar/tests/permissions.phpt
vendored
Normal file
18
vendor/pear/archive_tar/tests/permissions.phpt
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
--TEST--
|
||||
test preserving of permissions
|
||||
--SKIPIF--
|
||||
--FILE--
|
||||
<?php
|
||||
require_once dirname(__FILE__) . '/setup.php.inc';
|
||||
$tar = new Archive_Tar(dirname(__FILE__) . '/testperms.tar');
|
||||
$tar->extract('', true);
|
||||
$phpunit->assertNoErrors('after');
|
||||
echo 'tests done';
|
||||
?>
|
||||
--CLEAN--
|
||||
<?php
|
||||
@unlink('a');
|
||||
@unlink('b');
|
||||
?>
|
||||
--EXPECT--
|
||||
tests done
|
414
vendor/pear/archive_tar/tests/phpt_test.php.inc
vendored
Normal file
414
vendor/pear/archive_tar/tests/phpt_test.php.inc
vendored
Normal file
@@ -0,0 +1,414 @@
|
||||
<?php
|
||||
@include_once 'Text/Diff.php';
|
||||
@include_once 'Text/Diff/Renderer.php';
|
||||
@include_once 'Text/Diff/Renderer/unified.php';
|
||||
require_once 'PEAR/ErrorStack.php';
|
||||
require_once 'PEAR.php';
|
||||
class PEAR_PHPTest
|
||||
{
|
||||
var $_diffonly;
|
||||
var $_errors;
|
||||
function __construct($diffonly = false, $noStackCatch = false)
|
||||
{
|
||||
$this->_diffonly = $diffonly;
|
||||
$this->_errors = array();
|
||||
PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, array($this, 'pearerrorCallback'));
|
||||
if (!$noStackCatch) {
|
||||
PEAR_ErrorStack::setDefaultCallback(array($this, 'pearerrorstackCallback'));
|
||||
}
|
||||
}
|
||||
|
||||
function pearerrorCallback($err)
|
||||
{
|
||||
PEAR_ErrorStack::staticPush('PEAR_Error', -1, 'error', array('obj' => $err),
|
||||
$err->getMessage());
|
||||
}
|
||||
|
||||
function pearerrorstackCallback($err)
|
||||
{
|
||||
$this->_errors[] = $err;
|
||||
}
|
||||
|
||||
function assertPEARError($err, $message)
|
||||
{
|
||||
if (is_a($err, 'PEAR_Error')) {
|
||||
return true;
|
||||
}
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
echo "Not a PEAR_Error\n";
|
||||
return false;
|
||||
}
|
||||
|
||||
function assertNoErrors($message, $trace = null)
|
||||
{
|
||||
if (count($this->_errors) == 0) {
|
||||
return true;
|
||||
}
|
||||
if ($trace === null) {
|
||||
$trace = debug_backtrace();
|
||||
}
|
||||
$this->_failTest($trace, $message);
|
||||
foreach ($this->_errors as $err) {
|
||||
if ($err['package'] == 'PEAR_Error') {
|
||||
echo "Unexpected PEAR_Error:\n";
|
||||
echo 'message "' . $err['message'] . "\"\n";
|
||||
} else {
|
||||
echo "Unexpected PEAR_ErrorStack error:\n";
|
||||
echo 'package "' . $err['package'] . "\"\n";
|
||||
echo 'message "' . $err['message'] . "\"\n";
|
||||
}
|
||||
}
|
||||
$this->_errors = array();
|
||||
return false;
|
||||
}
|
||||
|
||||
function assertErrors($errors, $message, $trace = null)
|
||||
{
|
||||
if (!count($this->_errors)) {
|
||||
if ($trace === null) {
|
||||
$trace = debug_backtrace();
|
||||
}
|
||||
$this->_failTest($trace, $message);
|
||||
echo "No errors caught, but errors were expected\n";
|
||||
return false;
|
||||
}
|
||||
if (!isset($errors[0])) {
|
||||
$errors = array($errors);
|
||||
}
|
||||
$failed = false;
|
||||
foreach ($errors as $err) {
|
||||
$found = false;
|
||||
foreach ($this->_errors as $i => $caughterror) {
|
||||
if ($caughterror['package'] == $err['package']) {
|
||||
if ($caughterror['message'] == $err['message']) {
|
||||
$found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($found) {
|
||||
unset($this->_errors[$i]);
|
||||
continue;
|
||||
}
|
||||
if (!$failed) {
|
||||
if ($trace === null) {
|
||||
$trace = debug_backtrace();
|
||||
}
|
||||
$failed = true;
|
||||
$this->_failTest($trace, $message);
|
||||
}
|
||||
echo "Unthrown error:\n";
|
||||
if ($err['package'] == 'PEAR_Error') {
|
||||
echo "PEAR_Error:\n";
|
||||
} else {
|
||||
echo "error package: \"$err[package]\"\n";
|
||||
}
|
||||
echo "message: \"$err[message]\"\n";
|
||||
}
|
||||
if (count($this->_errors)) {
|
||||
if (!$failed) {
|
||||
if ($trace === null) {
|
||||
$trace = debug_backtrace();
|
||||
}
|
||||
$failed = true;
|
||||
$this->_failTest($trace, $message);
|
||||
}
|
||||
foreach ($this->_errors as $err) {
|
||||
echo "Unexpected error:\n";
|
||||
if ($err['package'] == 'PEAR_Error') {
|
||||
echo "PEAR_Error:\n";
|
||||
} else {
|
||||
echo "error package: \"$err[package]\"\n";
|
||||
}
|
||||
echo "message: \"$err[message]\"\n";
|
||||
}
|
||||
}
|
||||
$this->_errors = array();
|
||||
return !$failed;
|
||||
}
|
||||
|
||||
function assertTrue($test, $message)
|
||||
{
|
||||
$this->assertNoErrors($message, debug_backtrace());
|
||||
if ($test === true) {
|
||||
return true;
|
||||
}
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
echo "Unexpected non-true value: \n";
|
||||
var_export($test);
|
||||
echo "\n'$message'\n";
|
||||
return false;
|
||||
}
|
||||
|
||||
function assertIsa($control, $test, $message)
|
||||
{
|
||||
$this->assertNoErrors($message, debug_backtrace());
|
||||
if (is_a($test, $control)) {
|
||||
return true;
|
||||
}
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
echo "Unexpected non-$control object: \n";
|
||||
var_export($test);
|
||||
echo "\n'$message'\n";
|
||||
return false;
|
||||
}
|
||||
|
||||
function assertNull($test, $message)
|
||||
{
|
||||
$this->assertNoErrors($message, debug_backtrace());
|
||||
if ($test === null) {
|
||||
return true;
|
||||
}
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
echo "Unexpected non-null value: \n";
|
||||
var_export($test);
|
||||
echo "\n'$message'\n";
|
||||
return false;
|
||||
}
|
||||
|
||||
function assertNotNull($test, $message)
|
||||
{
|
||||
$this->assertNoErrors($message, debug_backtrace());
|
||||
if ($test !== null) {
|
||||
return true;
|
||||
}
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
echo "Unexpected null: \n";
|
||||
var_export($test);
|
||||
echo "\n'$message'\n";
|
||||
return false;
|
||||
}
|
||||
|
||||
function assertSame($test, $test1, $message)
|
||||
{
|
||||
$this->assertNoErrors($message, debug_backtrace());
|
||||
if ($test === $test1) {
|
||||
return true;
|
||||
}
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
echo "Unexpectedly two vars are not the same thing: \n";
|
||||
echo "\n'$message'\n";
|
||||
return false;
|
||||
}
|
||||
|
||||
function assertNotSame($test, $test1, $message)
|
||||
{
|
||||
$this->assertNoErrors($message, debug_backtrace());
|
||||
if ($test !== $test1) {
|
||||
return true;
|
||||
}
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
echo "Unexpectedly two vars are the same thing: \n";
|
||||
echo "\n'$message'\n";
|
||||
return false;
|
||||
}
|
||||
|
||||
function assertFalse($test, $message)
|
||||
{
|
||||
$this->assertNoErrors($message, debug_backtrace());
|
||||
if ($test === false) {
|
||||
return true;
|
||||
}
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
echo "Unexpected non-false value: \n";
|
||||
var_export($test);
|
||||
echo "\n'$message'\n";
|
||||
return false;
|
||||
}
|
||||
|
||||
function assertNotTrue($test, $message)
|
||||
{
|
||||
$this->assertNoErrors($message, debug_backtrace());
|
||||
if (!$test) {
|
||||
return true;
|
||||
}
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
echo "Unexpected loose true value: \n";
|
||||
var_export($test);
|
||||
echo "\n'$message'\n";
|
||||
return false;
|
||||
}
|
||||
|
||||
function assertNotFalse($test, $message)
|
||||
{
|
||||
$this->assertNoErrors($message, debug_backtrace());
|
||||
if ($test) {
|
||||
return true;
|
||||
}
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
echo "Unexpected loose false value: \n";
|
||||
var_export($test);
|
||||
echo "\n'$message'\n";
|
||||
return false;
|
||||
}
|
||||
|
||||
function assertEquals($control, $test, $message)
|
||||
{
|
||||
$this->assertNoErrors($message, debug_backtrace());
|
||||
if (str_replace(array("\r", "\n"), array('', ''),
|
||||
var_export($control, true)) != str_replace(array("\r", "\n"), array('', ''),
|
||||
var_export($test, true))) {
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
if (class_exists('Text_Diff')) {
|
||||
echo "Diff of expecting/received:\n";
|
||||
$diff = new Text_Diff(
|
||||
explode("\n", var_export($control, true)),
|
||||
explode("\n", var_export($test, true)));
|
||||
|
||||
// Output the diff in unified format.
|
||||
$renderer = new Text_Diff_Renderer_unified();
|
||||
echo $renderer->render($diff);
|
||||
if ($this->_diffonly) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
echo "Expecting:\n";
|
||||
var_export($control);
|
||||
echo "\nReceived:\n";
|
||||
var_export($test);
|
||||
echo "\n";
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function assertFileExists($fname, $message)
|
||||
{
|
||||
$this->assertNoErrors($message, debug_backtrace());
|
||||
if (!@file_exists($fname)) {
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
echo "File '$fname' does not exist, and should\n";
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function assertFileNotExists($fname, $message)
|
||||
{
|
||||
$this->assertNoErrors($message, debug_backtrace());
|
||||
if (@file_exists($fname)) {
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
echo "File '$fname' exists, and should not\n";
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function assertRegEquals($dump, &$reg, $message)
|
||||
{
|
||||
$actualdump = var_export(trim($this->dumpReg($reg)), true);
|
||||
$testdump = var_export(trim($dump), true);
|
||||
return $this->assertEquals($testdump, $actualdump, $message);
|
||||
}
|
||||
|
||||
function assertPackageInfoEquals($control, $test, $message)
|
||||
{
|
||||
$this->assertNoErrors($message, debug_backtrace());
|
||||
if (isset($control[0])) {
|
||||
if (!isset($test[0]) || (count($control) != count($test))) {
|
||||
echo "Invalid packageInfo\n";
|
||||
$ret = $this->assertEquals($control, $test, $message);
|
||||
}
|
||||
$ret = true;
|
||||
foreach ($control as $i => $packageinfo) {
|
||||
$ret = $ret &&
|
||||
$this->assertPackageInfoEquals($packageinfo, $test[$i], $message . $i);
|
||||
}
|
||||
return $ret;
|
||||
}
|
||||
if (isset($control['_lastmodified'])) {
|
||||
if (!isset($test['_lastmodified'])) {
|
||||
echo "_lastmodified is not set in packageInfo() output\n";
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
$savecontrol = sort($control);
|
||||
$savetest = sort($test);
|
||||
unset($control['_lastmodified']);
|
||||
unset($test['_lastmodified']);
|
||||
if (var_export($control, true) != var_export($test, true)) {
|
||||
$this->_failTest(debug_backtrace(), $message);
|
||||
if (class_exists('Text_Diff')) {
|
||||
echo "Diff of expecting/received:\n";
|
||||
$diff = new Text_Diff(
|
||||
explode("\n", var_export($control, true)),
|
||||
explode("\n", var_export($test, true)));
|
||||
|
||||
// Output the diff in unified format.
|
||||
$renderer = new Text_Diff_Renderer_unified();
|
||||
echo $renderer->render($diff);
|
||||
if ($this->_diffonly) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
echo "Expecting:\n";
|
||||
var_export($savecontrol);
|
||||
echo "\nReceived:\n";
|
||||
var_export($savetest);
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function _sortRegEntries($a, $b)
|
||||
{
|
||||
return strnatcasecmp($a['name'], $b['name']);
|
||||
}
|
||||
|
||||
function dumpReg(&$reg)
|
||||
{
|
||||
ob_start();
|
||||
print "dumping registry...\n";
|
||||
$infos = $reg->packageInfo(null, null, null);
|
||||
ksort($infos);
|
||||
foreach ($infos as $channel => $info) {
|
||||
echo "channel $channel:\n";
|
||||
usort($info, array($this, '_sortRegEntries'));
|
||||
foreach ($info as $pkg) {
|
||||
print $pkg["name"] . ":";
|
||||
unset($pkg["name"]);
|
||||
foreach ($pkg as $k => $v) {
|
||||
if ($k == '_lastmodified') {
|
||||
print " _lastmodified is set";
|
||||
continue;
|
||||
}
|
||||
if (is_array($v) && $k == 'filelist') {
|
||||
print " $k=array(";
|
||||
$i = 0;
|
||||
foreach ($v as $k2 => $v2) {
|
||||
if ($i++ > 0) print ",";
|
||||
print "{$k2}[";
|
||||
$j = 0;
|
||||
foreach ($v2 as $k3 => $v3) {
|
||||
if ($j++ > 0) print ",";
|
||||
print "$k3=$v3";
|
||||
}
|
||||
print "]";
|
||||
}
|
||||
print ")";
|
||||
} else {
|
||||
print " $k=\"$v\"";
|
||||
}
|
||||
}
|
||||
print "\n";
|
||||
}
|
||||
}
|
||||
print "dump done\n";
|
||||
$ret = ob_get_contents();
|
||||
ob_end_clean();
|
||||
return $ret;
|
||||
}
|
||||
|
||||
function _failTest($trace, $message)
|
||||
{
|
||||
echo 'Test Failure: "' . $message . "\"\n in " . $trace[0]['file'] . ' line ' .
|
||||
$trace[0]['line'] . "\n";
|
||||
}
|
||||
|
||||
function showAll()
|
||||
{
|
||||
$this->_diffonly = false;
|
||||
}
|
||||
}
|
||||
?>
|
26
vendor/pear/archive_tar/tests/relativesymlink.phpt
vendored
Normal file
26
vendor/pear/archive_tar/tests/relativesymlink.phpt
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
--TEST--
|
||||
test symbolic links
|
||||
--SKIPIF--
|
||||
--FILE--
|
||||
<?php
|
||||
require_once dirname(__FILE__) . '/setup.php.inc';
|
||||
$me = dirname(__FILE__) . '/testit';
|
||||
$tar = new Archive_Tar(dirname(__FILE__) . '/relativesymlink.tar');
|
||||
$tar->extract();
|
||||
$phpunit->assertNoErrors('after');
|
||||
$phpunit->assertFileExists('testme', 'dir');
|
||||
$phpunit->assertFileExists('testme/a/file1.txt', 'file1.txt');
|
||||
$phpunit->assertFileExists('testme/b/symlink.txt', 'symlink.txt');
|
||||
$phpunit->assertTrue(is_link('testme/b/symlink.txt'), 'is link');
|
||||
echo 'tests done';
|
||||
?>
|
||||
--CLEAN--
|
||||
<?php
|
||||
@unlink('testme/a/file1.txt');
|
||||
@unlink('testme/b/symlink.txt');
|
||||
@rmdir('testme/a');
|
||||
@rmdir('testme/b');
|
||||
@rmdir('testme');
|
||||
?>
|
||||
--EXPECT--
|
||||
tests done
|
BIN
vendor/pear/archive_tar/tests/relativesymlink.tar
vendored
Normal file
BIN
vendor/pear/archive_tar/tests/relativesymlink.tar
vendored
Normal file
Binary file not shown.
5
vendor/pear/archive_tar/tests/setup.php.inc
vendored
Normal file
5
vendor/pear/archive_tar/tests/setup.php.inc
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<?php
|
||||
error_reporting(E_ALL);
|
||||
require_once dirname(__FILE__) . '/phpt_test.php.inc';
|
||||
$phpunit = new PEAR_PHPTest(true);
|
||||
require_once dirname(dirname(__FILE__)) . '/Archive/Tar.php';
|
24
vendor/pear/archive_tar/tests/symlink.phpt
vendored
Normal file
24
vendor/pear/archive_tar/tests/symlink.phpt
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
--TEST--
|
||||
test symbolic links
|
||||
--SKIPIF--
|
||||
--FILE--
|
||||
<?php
|
||||
require_once dirname(__FILE__) . '/setup.php.inc';
|
||||
$me = dirname(__FILE__) . '/testit';
|
||||
$tar = new Archive_Tar(dirname(__FILE__) . '/testsymlink.tar');
|
||||
$tar->extract();
|
||||
$phpunit->assertNoErrors('after');
|
||||
$phpunit->assertFileExists('testme', 'dir');
|
||||
$phpunit->assertFileExists('testme/file1.txt', 'file1.txt');
|
||||
$phpunit->assertFileExists('testme/symlink.txt', 'symlink.txt');
|
||||
$phpunit->assertTrue(is_link('testme/symlink.txt'), 'is link');
|
||||
echo 'tests done';
|
||||
?>
|
||||
--CLEAN--
|
||||
<?php
|
||||
@unlink('testme/file1.txt');
|
||||
@unlink('testme/symlink.txt');
|
||||
@rmdir('testme');
|
||||
?>
|
||||
--EXPECT--
|
||||
tests done
|
28
vendor/pear/archive_tar/tests/symlink_disallow.phpt
vendored
Normal file
28
vendor/pear/archive_tar/tests/symlink_disallow.phpt
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
--TEST--
|
||||
test symbolic links
|
||||
--SKIPIF--
|
||||
--FILE--
|
||||
<?php
|
||||
require_once dirname(__FILE__) . '/setup.php.inc';
|
||||
$me = dirname(__FILE__) . '/testit';
|
||||
$tar = new Archive_Tar(dirname(__FILE__) . '/testsymlink.tar');
|
||||
$tar->extract('', false, false);
|
||||
$phpunit->assertErrors(array(
|
||||
array(
|
||||
'package' => 'PEAR_Error',
|
||||
'message' => 'Symbolic links are not allowed. Unable to extract {testme/symlink.txt}'
|
||||
),
|
||||
), 'Warning thrown');
|
||||
$phpunit->assertFileExists('testme', 'dir');
|
||||
$phpunit->assertFileNotExists('testme/file1.txt', 'file1.txt');
|
||||
$phpunit->assertFileNotExists('testme/symlink.txt', 'symlink.txt');
|
||||
echo 'tests done';
|
||||
?>
|
||||
--CLEAN--
|
||||
<?php
|
||||
@unlink('testme/file1.txt');
|
||||
@unlink('testme/symlink.txt');
|
||||
@rmdir('testme');
|
||||
?>
|
||||
--EXPECT--
|
||||
tests done
|
1
vendor/pear/archive_tar/tests/testblock1/a.txt
vendored
Normal file
1
vendor/pear/archive_tar/tests/testblock1/a.txt
vendored
Normal file
@@ -0,0 +1 @@
|
||||
abc
|
BIN
vendor/pear/archive_tar/tests/testblock1/bugTriggeringPng.png
vendored
Normal file
BIN
vendor/pear/archive_tar/tests/testblock1/bugTriggeringPng.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 17 KiB |
16
vendor/pear/archive_tar/tests/testblock3/1024bytes.txt
vendored
Normal file
16
vendor/pear/archive_tar/tests/testblock3/1024bytes.txt
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
194 210 54 166 74 179 115 216 109 21 220 29 144 242 90 206
|
||||
240 73 172 14 153 163 43 16 233 20 186 91 95 150 60 61
|
||||
180 187 233 126 130 154 116 206 213 231 202 148 148 12 125 24
|
||||
6 139 32 235 117 240 56 96 23 1 182 167 116 64 92 73
|
||||
250 177 157 119 121 148 112 50 89 24 37 214 81 88 201 75
|
||||
162 108 60 114 137 227 170 186 231 213 177 33 44 143 243 98
|
||||
14 28 226 77 152 241 243 62 103 237 187 235 227 73 9 119
|
||||
162 64 127 74 73 90 112 200 39 6 173 251 12 191 166 18
|
||||
235 100 74 184 126 153 23 118 27 25 128 222 234 246 165 159
|
||||
170 127 236 199 91 67 96 185 108 159 172 2 245 202 161 177
|
||||
147 188 0 151 251 230 251 100 226 67 212 38 72 32 44 117
|
||||
10 39 163 159 0 197 160 225 25 177 16 0 240 16 137 105
|
||||
187 132 129 98 24 210 169 33 246 77 217 145 242 118 181 47
|
||||
160 61 62 129 71 52 253 85 2 215 174 241 55 32 236 27
|
||||
160 120 145 188 132 37 161 178 45 227 209 57 142 19 88 175
|
||||
230 238 104 128 26 196 126 118 214 122 201 123
|
2
vendor/pear/archive_tar/tests/testblock3/randombytes.txt
vendored
Normal file
2
vendor/pear/archive_tar/tests/testblock3/randombytes.txt
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
250 97 98 194 5 149 229 27 58 62 133 73 95 230 219 128
|
||||
224 98 210 250 162 58 240 80 202 249 173 203 125 186
|
BIN
vendor/pear/archive_tar/tests/testpax.tar
vendored
Normal file
BIN
vendor/pear/archive_tar/tests/testpax.tar
vendored
Normal file
Binary file not shown.
BIN
vendor/pear/archive_tar/tests/testperms.tar
vendored
Normal file
BIN
vendor/pear/archive_tar/tests/testperms.tar
vendored
Normal file
Binary file not shown.
BIN
vendor/pear/archive_tar/tests/testsymlink.tar
vendored
Normal file
BIN
vendor/pear/archive_tar/tests/testsymlink.tar
vendored
Normal file
Binary file not shown.
16
vendor/pear/archive_tar/tests/text-0.txt
vendored
Normal file
16
vendor/pear/archive_tar/tests/text-0.txt
vendored
Normal file
@@ -0,0 +1,16 @@
|
||||
a8,.vT[$Fe;>}hm\"#xO7:46y_tg6c-[A&S]z0fke?(B6?$:W$X{E%PO>~UWl8(
|
||||
.%RWPjN55)cd&?oJPgFFZj#+U<qrF:9yIRe\S0F}Y|[`+4^::byA2Is7UY8QShd
|
||||
v]F 1O0_[Ip7.12B"!u!UPJX05ZzKXP<JJ(X@4r(M2D})|TA@b#2zFlG(EQqT@M
|
||||
[RKXlK41}Q= uEq4`p"ons9eil/$Tbp>T~!xcu46(QhbViq%FShbsm5Qt:8}[V1
|
||||
ov!|iNrfBH)JBa)G?P*v!@=?:Y^2!)v `wxPQ^xT[~W6&q^Un@"c#g3=M++ 0.x
|
||||
]^Lo4{|}Q]YN?GSaA/*s,Az>04&2Vib~Au.=ZqMTw~=}UoF/~5Gs;JTXF*<FyG"
|
||||
1Hvu#nol Y 21/{G9i|D=$GTI KREuA\wI<wM@dYOKzS{6&]QE8ud|EPb:f?-Gt
|
||||
I#)E9)@;_.0y9`P,&jY! :\.J8uGnUd},~`DXkJ-4\\xK24FvGqX434G#0hXLrH
|
||||
q3YXk^{Rgb` Gg&hUJY)+IrJffZ<O/7)UYj^I}gy.>C#&Vx%>lw9AdZ_eM{s8B#
|
||||
II*pD'_4H[LivE<WtfQW1IK'(6%|sQG=C,6nfeRVXJ{u:tTB(A"({4>(4!$@Ak^
|
||||
=|U/{r5n)I{(01wGUM53800-aIdiv1U_HDvgp2q}X,v-{O! 'u$8RJbBO]<PTA
|
||||
CiqiD_L,=;^W&n?,ai}U&MV9nU[=,t_qDiCkR]SM18ok;dVe@g+G*`FYtl/{cMq
|
||||
B8R6kfeHNA{bZU?]{[LMLCqokIld;w&NebP<. :8l4d2[~P*\m+MYT}1RK.q4bH
|
||||
,:XUk'YazKlPN@_WBpb!\em%]H|A+_Fbqki<fjpahg89Xb$fB5ME~ItuXM5H4Ol
|
||||
*a1SfkUQmv|+xM+Rz2Wq{sXA^uTU(j;Ne.Tcd3uW;>lJSI3L"hj=z .Bfl)waj*
|
||||
8.G,qEubj;:xJc@Y14nZ`V|%dIk$GAks_MI|y^0R3)rIY9I.DfD,kZ9ap{z Xn
|
Reference in New Issue
Block a user