Browse Source

new unit test - test works, but there is a serious bug in sortPkgDeps to be fixed, as unearthed by this test

PEAR_1_4DEV
Greg Beaver 23 years ago
parent
commit
df5317e336
  1. 38
      pear/tests/common_sortPkgDeps1_package.xml
  2. 39
      pear/tests/common_sortPkgDeps2_package.xml
  3. 39
      pear/tests/common_sortPkgDeps3_package.xml
  4. 38
      pear/tests/common_sortPkgDeps4_package.xml
  5. 38
      pear/tests/common_sortPkgDeps5_package.xml
  6. 35
      pear/tests/common_sortPkgDeps6_package.xml
  7. 75
      pear/tests/pear_common_sortPkgDeps.phpt

38
pear/tests/common_sortPkgDeps1_package.xml

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE package SYSTEM "http://pear.php.net/dtd/package-1.0">
<package version="1.0">
<name>pkg1</name>
<summary>required test for PEAR_Installer</summary>
<description>
fake package
</description>
<license>PHP License</license>
<maintainers>
<maintainer>
<user>fakeuser</user>
<name>Joe Shmoe</name>
<email>nobody@example.com</email>
<role>lead</role>
</maintainer>
</maintainers>
<release>
<version>1.1</version>
<date>2003-09-09</date>
<state>stable</state>
<notes>
required dependency test
</notes>
<deps>
<dep type="pkg" version="1.0" rel="ge">pkg2</dep>
</deps>
<filelist>
<dir name="/" baseinstalldir="grob" role="php">
<file>zoorb.php</file>
<dir name="goompness" role="php">
<file>oggbrzitzkee.php</file>
<file>Mopreeb.php</file>
</dir>
</dir>
</filelist>
</release>
</package>

39
pear/tests/common_sortPkgDeps2_package.xml

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE package SYSTEM "http://pear.php.net/dtd/package-1.0">
<package version="1.0">
<name>pkg2</name>
<summary>required test for PEAR_Installer</summary>
<description>
fake package
</description>
<license>PHP License</license>
<maintainers>
<maintainer>
<user>fakeuser</user>
<name>Joe Shmoe</name>
<email>nobody@example.com</email>
<role>lead</role>
</maintainer>
</maintainers>
<release>
<version>1.1</version>
<date>2003-09-09</date>
<state>stable</state>
<notes>
required dependency test
</notes>
<deps>
<dep type="pkg" version="1.0" rel="ge">pkg3</dep>
<dep type="php" version="1.0" rel="ge" />
</deps>
<filelist>
<dir name="/" baseinstalldir="grob" role="php">
<file>zoorb.php</file>
<dir name="goompness" role="php">
<file>oggbrzitzkee.php</file>
<file>Mopreeb.php</file>
</dir>
</dir>
</filelist>
</release>
</package>

39
pear/tests/common_sortPkgDeps3_package.xml

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE package SYSTEM "http://pear.php.net/dtd/package-1.0">
<package version="1.0">
<name>pkg3</name>
<summary>required test for PEAR_Installer</summary>
<description>
fake package
</description>
<license>PHP License</license>
<maintainers>
<maintainer>
<user>fakeuser</user>
<name>Joe Shmoe</name>
<email>nobody@example.com</email>
<role>lead</role>
</maintainer>
</maintainers>
<release>
<version>1.1</version>
<date>2003-09-09</date>
<state>stable</state>
<notes>
required dependency test
</notes>
<deps>
<dep type="pkg" version="1.0" rel="ge">pkg4</dep>
<dep type="php" version="1.0" rel="ge">pkg5</dep>
</deps>
<filelist>
<dir name="/" baseinstalldir="grob" role="php">
<file>zoorb.php</file>
<dir name="goompness" role="php">
<file>oggbrzitzkee.php</file>
<file>Mopreeb.php</file>
</dir>
</dir>
</filelist>
</release>
</package>

38
pear/tests/common_sortPkgDeps4_package.xml

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE package SYSTEM "http://pear.php.net/dtd/package-1.0">
<package version="1.0">
<name>pkg4</name>
<summary>required test for PEAR_Installer</summary>
<description>
fake package
</description>
<license>PHP License</license>
<maintainers>
<maintainer>
<user>fakeuser</user>
<name>Joe Shmoe</name>
<email>nobody@example.com</email>
<role>lead</role>
</maintainer>
</maintainers>
<release>
<version>1.1</version>
<date>2003-09-09</date>
<state>stable</state>
<notes>
required dependency test
</notes>
<deps>
<dep type="pkg" version="1.0" rel="ge">pkg6</dep>
</deps>
<filelist>
<dir name="/" baseinstalldir="grob" role="php">
<file>zoorb.php</file>
<dir name="goompness" role="php">
<file>oggbrzitzkee.php</file>
<file>Mopreeb.php</file>
</dir>
</dir>
</filelist>
</release>
</package>

38
pear/tests/common_sortPkgDeps5_package.xml

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE package SYSTEM "http://pear.php.net/dtd/package-1.0">
<package version="1.0">
<name>pkg5</name>
<summary>required test for PEAR_Installer</summary>
<description>
fake package
</description>
<license>PHP License</license>
<maintainers>
<maintainer>
<user>fakeuser</user>
<name>Joe Shmoe</name>
<email>nobody@example.com</email>
<role>lead</role>
</maintainer>
</maintainers>
<release>
<version>1.1</version>
<date>2003-09-09</date>
<state>stable</state>
<notes>
required dependency test
</notes>
<deps>
<dep type="pkg" version="1.0" rel="ge">pkg6</dep>
</deps>
<filelist>
<dir name="/" baseinstalldir="grob" role="php">
<file>zoorb.php</file>
<dir name="goompness" role="php">
<file>oggbrzitzkee.php</file>
<file>Mopreeb.php</file>
</dir>
</dir>
</filelist>
</release>
</package>

35
pear/tests/common_sortPkgDeps6_package.xml

@ -0,0 +1,35 @@
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE package SYSTEM "http://pear.php.net/dtd/package-1.0">
<package version="1.0">
<name>pkg6</name>
<summary>required test for PEAR_Installer</summary>
<description>
fake package
</description>
<license>PHP License</license>
<maintainers>
<maintainer>
<user>fakeuser</user>
<name>Joe Shmoe</name>
<email>nobody@example.com</email>
<role>lead</role>
</maintainer>
</maintainers>
<release>
<version>1.1</version>
<date>2003-09-09</date>
<state>stable</state>
<notes>
required dependency test
</notes>
<filelist>
<dir name="/" baseinstalldir="grob" role="php">
<file>zoorb.php</file>
<dir name="goompness" role="php">
<file>oggbrzitzkee.php</file>
<file>Mopreeb.php</file>
</dir>
</dir>
</filelist>
</release>
</package>

75
pear/tests/pear_common_sortPkgDeps.phpt

@ -0,0 +1,75 @@
--TEST--
PEAR_Common::sortPkgDeps test
--SKIPIF--
<?php
if (!getenv('PHP_PEAR_RUNTESTS')) {
echo 'skip';
}
?>
--FILE--
<?php
$dir = getcwd();
chdir(dirname(__FILE__));
require_once 'PEAR/Common.php';
$c = new PEAR_Common();
$packages = array(
'common_sortPkgDeps6_package.xml',
'common_sortPkgDeps2_package.xml',
'common_sortPkgDeps1_package.xml',
'common_sortPkgDeps4_package.xml',
'common_sortPkgDeps5_package.xml',
'common_sortPkgDeps3_package.xml',
);
$uninstallpackages = array(
$c->infoFromAny('common_sortPkgDeps6_package.xml'),
$c->infoFromAny('common_sortPkgDeps2_package.xml'),
$c->infoFromAny('common_sortPkgDeps1_package.xml'),
$c->infoFromAny('common_sortPkgDeps4_package.xml'),
$c->infoFromAny('common_sortPkgDeps5_package.xml'),
$c->infoFromAny('common_sortPkgDeps3_package.xml'),
);
echo "Test Install Sort:\n";
$c->sortPkgDeps($packages);
dumpPacks($packages);
echo "Test Uninstall Sort:\n";
$c->sortPkgDeps($uninstallpackages, true);
dumpPacks($packages);
chdir($dir);
function dumpPacks($p)
{
echo "Packages(\n";
foreach ($p as $inf) {
echo $inf['info']['package'] . ",\n";
}
echo ")\n";
}
?>
--GET--
--POST--
--EXPECT--
Test Install Sort:
Packages(
pkg6,
pkg4,
pkg5,
pkg3,
pkg2,
pkg1,
)
Test Uninstall Sort:
Packages(
pkg1,
pkg2,
pkg3,
pkg4,
pkg5,
pkg6,
)
Loading…
Cancel
Save