if ($objectCount != sizeof($objects)) { AddTrace("\t***"); } } $objectCount++; } } if ($errors == 0) { $_SESSION['diagnosticsSuccessful'] = true; } if (isset($_POST['pog_test']) && $_POST['pog_test'] == 'no') { AddTrace("\nUNIT TESTS NOT PERFORMED. FOUND {$errors} ERROR(S)"); } else { AddTrace("\nCHECKED " . count($objectNameList) . " OBJECT(S). FOUND {$errors} ERROR(S)" . ($errors == 0 ? ". HURRAY!" : ":")); } AddTrace("---------------------------------------------------"); if (isset($_SESSION['errorMessages'])) { $errorMessages = unserialize($_SESSION['errorMessages']); } $traceMessages = unserialize($_SESSION['traceMessages']); $diagnostics = ''; foreach ($traceMessages as $traceMessage) { $diagnostics .= "\n{$traceMessage}"; } if (isset($errorMessages)) { foreach ($errorMessages as $errorMessage) { $diagnostics .= "\n{$errorMessage}\n"; } } $_SESSION['fileNames'] = serialize($objects); $_SESSION['objectNameList'] = serialize($objectNameList);
/** * Unit test for SetSiblingList() * * @param unknown_type $object * @param unknown_type $trace */ function TestSetSiblingList($object, $trace = true, $ignoreObjects) { $thisObjectName = get_class($object); if (!TestSaveDeep_Sibling($object, false, $ignoreObjects)) { AddTrace("\tSetSiblingList(deep) ignored"); AddError("SetSiblingList ignored since SaveDeep could not be performed"); return false; } //get all sibling classes $siblingList = array(); eval("\$object = new {$thisObjectName}();"); $object = PopulateTestValues($object); $attribute_types = $object->pog_attribute_type; foreach ($attribute_types as $key => $attribute_array) { if ($attribute_array['db_attributes'][1] == "JOIN") { $siblingList[] = $key; } } $errors = 0; foreach ($siblingList as $sibling) { //instantiate $siblingInstanceList = array(); eval("\$siblingInstance = new {$sibling}();"); eval("\$siblingInstance2 = new {$sibling}();"); $siblingInstance = PopulateTestValues($siblingInstance); $siblingInstance2 = PopulateTestValues($siblingInstance2); //add sibling to array $siblingInstanceList[] = $siblingInstance; $siblingInstanceList[] = $siblingInstance2; eval("\$object -> Set" . $sibling . "List(\$siblingInstanceList);"); } //test if (!$object->Save(true)) { $errors++; return false; } foreach ($siblingList as $sibling) { //instantiate eval("\$siblingArray = \$object->Get" . $sibling . "List();"); if (sizeof($siblingArray) == 0) { if ($trace) { AddTrace("\tSet({$sibling})List failed"); } $errors++; } else { if ($trace) { AddTrace("\tSet({$sibling})List....OK!"); } } } //cleanup $object->Delete(false, true); if ($errors == 0) { return true; } return false; }