diff --git a/tests/archiving/testSuite.php b/tests/archiving/testSuite.php new file mode 100644 index 0000000..6a872d0 --- /dev/null +++ b/tests/archiving/testSuite.php @@ -0,0 +1,113 @@ +"; + +$aClasses = array("archiving/DocumentArchiving" => array("DocumentID", "ArchivingTypeID", "ArchivingSettingsID"), + "archiving/TimeUnit" => array("Name"), + "archiving/ArchivingType" => array("Name"), + "archiving/ArchivingUtilisationSettings" => array("DocumentTransactionID", "TimePeriodID"), + "archiving/TimePeriod" => array("TimeUnitID", "Units"), + "archiving/ArchivingDateSettings" => array("ExpirationDate", "TimePeriodID")); + +$aInitialValues = array("1,2,3", + "hour", + "\"blah's\"", + "5, 1", + "1, 10", + "'2002-10-10', 1"); + +$aSetValues = array(array(9,8,7), + array("minute"), + array("fooblar's"), + array(6,6), + array(2,20), + array("2003-01-01", 4)); + + +$count = 0; +foreach ($aClasses as $classPath => $aMethodList) { + $aClassPath = explode("/", $classPath); + $className = $aClassPath[count($aClassPath)-1]; + require_once("$default->fileSystemRoot/lib/$classPath.inc"); + + $constructor = "\$oClass = new $className($aInitialValues[$count]);"; + echo "$className- $constructor
"; + echo "Testing creation
"; + eval($constructor); + if (isset($oClass)) { + echo "Passed creation test

"; + + echo "Testing storage
"; + if ($oClass->create()) { + echo "Passed storage test

"; + $oClass->iId = -1;$oClass->create(); + + echo "Testing setting and getting of values
"; + $i=0; + foreach ($aMethodList as $method) { + $getter = "get$method"; + $setter = "set$method"; + echo "Current $method: " . $oClass->$getter() . "
"; + echo "Setting $method to: " . $aSetValues[$count][$i] . "
"; + $oClass->$setter($aSetValues[$count][$i]); + echo "New $method: " . $oClass->$getter() . "

"; + $i++; + } + + echo "Testing update
"; + if ($oClass->update()) { + echo "Passed update test

"; + + echo "Testing retrieval
"; + $get = "\$oNewClass = $className::get(1);"; + eval($get); + if ($oNewClass) { + echo "Passed retrieval test:\n" . arrayToString($oNewClass) . "
"; + } else { + echo "Failed retrieval test.
"; + } + + echo "Testing array retrieval
"; + $getList = "\$aNewClass = $className::getList();"; + eval($getList); + echo "array=\n" . arrayToString($aNewClass) . "

"; + + echo "Testing deletion
"; + if ($oClass->delete()) { + echo "Passed deletion test
"; + } else { + echo "Failed deletion test"; + } + } else { + echo "Failed update test
"; + echo "Tests NOT run: (a) retrieval by id (b) array list retrieval (c) deletion
"; + } + } else { + echo "Failed storage test
"; + echo "Tests NOT run: (a) update (b) retrieval by id (c) array list retrieval (d) deletion
"; + } + } else { + echo "Failed creation test
"; + echo "Tests NOT run: (a)getting and setting (b) storage (c) retrieval by id (d) array list retrieval (e) deletion
"; + } + $count++; + echo "
"; +} +echo ""; + +?> \ No newline at end of file