From 4da5da699ed24e0eb995083fcf7ec32c87672e6c Mon Sep 17 00:00:00 2001 From: Greg Beaver Date: Fri, 31 Oct 2003 17:39:59 +0000 Subject: [PATCH] new test case --- pear/tests/pear_dependency_checkPackage.phpt | 187 +++++++++++++++++++ 1 file changed, 187 insertions(+) create mode 100644 pear/tests/pear_dependency_checkPackage.phpt diff --git a/pear/tests/pear_dependency_checkPackage.phpt b/pear/tests/pear_dependency_checkPackage.phpt new file mode 100644 index 0000000000..89a7fe11ac --- /dev/null +++ b/pear/tests/pear_dependency_checkPackage.phpt @@ -0,0 +1,187 @@ +--TEST-- +PEAR_Dependency::checkPackage() test +--SKIPIF-- + +--FILE-- +statedir = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'checkPackagetmp'; + +$files1 = array( + "pkg1-1.php" => array( + "role" => "php", + ), + "pkg1-2.php" => array( + "role" => "php", + "baseinstalldir" => "pkg1", + ), + ); +$reg->addPackage("pkg1", array("name" => "pkg1", "version" => "1.0", "filelist" => $files1)); + +$dep = new PEAR_Dependency($reg); +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg1'); +echo 'has works? '; +echo $ret ? "no\n" : "yes\n"; +echo $msg . "\n"; + +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg1', '1.0', 'eq'); +echo 'eq 1.0 works? '; +echo $ret ? "no\n" : "yes\n"; +echo $msg . "\n"; + +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg1', '1.0', 'le'); +echo 'le 1.0 works? '; +echo $ret ? "no\n" : "yes\n"; +echo $msg . "\n"; + +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg1', '1.1', 'lt'); +echo 'lt 1.1 works? '; +echo $ret ? "no\n" : "yes\n"; +echo $msg . "\n"; + +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg1', '1.1', 'ne'); +echo 'ne 1.1 works? '; +echo $ret ? "no\n" : "yes\n"; +echo $msg . "\n"; + +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg1', '1.0', 'ge'); +echo 'ge 1.0 works? '; +echo $ret ? "no\n" : "yes\n"; +echo $msg . "\n"; + +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg1', '0.9', 'gt'); +echo 'ge 0.9 works? '; +echo $ret ? "no\n" : "yes\n"; +echo $msg . "\n"; + +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg2', null, 'not'); +echo 'not pkg2 works? '; +echo $ret ? "no\n" : "yes\n"; +echo $msg . "\n"; + +// error conditions + +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg1', '0.9', 'le'); +echo 'le 0.9 works? '; +echo $ret ? "no\n" : "yes\n"; +echo '$ret is PEAR_DEPENDENCY_CONFLICT? '; +echo ($ret == PEAR_DEPENDENCY_CONFLICT) ? "yes\n" : "no\n"; +echo $msg . "\n"; + +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg1', '1.0', 'ne'); +echo 'ne 1.0 works? '; +echo $ret ? "no\n" : "yes\n"; +echo '$ret is PEAR_DEPENDENCY_CONFLICT? '; +echo ($ret == PEAR_DEPENDENCY_CONFLICT) ? "yes\n" : "no\n"; +echo $msg . "\n"; + +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg1', '1.1', 'ge'); +echo 'ge 1.1 works? '; +echo $ret ? "no\n" : "yes\n"; +echo '$ret is PEAR_DEPENDENCY_UPGRADE_MINOR? '; +echo ($ret == PEAR_DEPENDENCY_UPGRADE_MINOR) ? "yes\n" : "no\n"; +echo $msg . "\n"; + +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg1', '2.0', 'ge'); +echo 'ge 2.0 works? '; +echo $ret ? "no\n" : "yes\n"; +echo '$ret is PEAR_DEPENDENCY_UPGRADE_MAJOR? '; +echo ($ret == PEAR_DEPENDENCY_UPGRADE_MAJOR) ? "yes\n" : "no\n"; +echo $msg . "\n"; + +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg1', '1.0', 'gt'); +echo 'gt 1.0 works? '; +echo $ret ? "no\n" : "yes\n"; +echo '$ret is PEAR_DEPENDENCY_UPGRADE_MINOR? '; +echo ($ret == PEAR_DEPENDENCY_UPGRADE_MINOR) ? "yes\n" : "no\n"; +echo $msg . "\n"; + +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg1', null, 'not'); +echo 'not pkg1 works? '; +echo $ret ? "no\n" : "yes\n"; +echo '$ret is PEAR_DEPENDENCY_CONFLICT? '; +echo ($ret == PEAR_DEPENDENCY_CONFLICT) ? "yes\n" : "no\n"; +echo $msg . "\n"; + +$msg = 'no error'; +$ret = $dep->checkPackage($msg, 'pkg1', null, 'foobar'); +echo 'foobar pkg1 works? '; +echo $ret ? "no\n" : "yes\n"; +echo '$ret is PEAR_DEPENDENCY_BAD_DEPENDENCY? '; +echo ($ret == PEAR_DEPENDENCY_BAD_DEPENDENCY) ? "yes\n" : "no\n"; +echo $msg . "\n"; +cleanall(); + +// ------------------------------------------------------------------------- // + +function cleanall() +{ + $dp = opendir(dirname(__FILE__) . DIRECTORY_SEPARATOR . 'checkPackagetmp'); + while ($ent = readdir($dp)) { + if (substr($ent, -4) == ".reg") { + unlink(dirname(__FILE__) . DIRECTORY_SEPARATOR . 'checkPackagetmp' . DIRECTORY_SEPARATOR . $ent); + } + } +} + +?> +--GET-- +--POST-- +--EXPECT-- +has works? yes +no error +eq 1.0 works? yes +no error +le 1.0 works? yes +no error +lt 1.1 works? yes +no error +ne 1.1 works? yes +no error +ge 1.0 works? yes +no error +ge 0.9 works? yes +no error +not pkg2 works? yes +no error +le 0.9 works? no +$ret is PEAR_DEPENDENCY_CONFLICT? yes +requires package `pkg1' <= 0.9 +ne 1.0 works? no +$ret is PEAR_DEPENDENCY_CONFLICT? yes +requires package `pkg1' != 1.0 +ge 1.1 works? no +$ret is PEAR_DEPENDENCY_UPGRADE_MINOR? yes +requires package `pkg1' >= 1.1 +ge 2.0 works? no +$ret is PEAR_DEPENDENCY_UPGRADE_MAJOR? yes +requires package `pkg1' >= 2.0 +gt 1.0 works? no +$ret is PEAR_DEPENDENCY_UPGRADE_MINOR? yes +requires package `pkg1' > 1.0 +not pkg1 works? no +$ret is PEAR_DEPENDENCY_CONFLICT? yes +conflicts with package `pkg1' +foobar pkg1 works? no +$ret is PEAR_DEPENDENCY_BAD_DEPENDENCY? yes +relation 'foobar' with requirement '' is not supported (name=pkg1) -- 2.50.1