示例#1
0
 /**
  * Tests method getWorkflowsForSystemid with newly created workflow objects
  */
 public function test_getWorkflowsForSystemid_2()
 {
     //1 Init settings
     $strSystemId1 = generateSystemid();
     $strSystemId2 = generateSystemid();
     $arrWorkflowsClasses = array(array("class" => "class_workflow_workflows_messagesummary", "systemid" => $strSystemId1, "amount" => 5), array("class" => "class_workflow_workflows_messagesummary", "systemid" => $strSystemId2, "amount" => 5), array("class" => "class_workflow_workflows_dbdump", "systemid" => $strSystemId2, "amount" => 23));
     //2. Create the workflow objects
     $arrCreatedWorkflows = array();
     foreach ($arrWorkflowsClasses as $arrInfo) {
         for ($intI = 0; $intI < $arrInfo["amount"]; $intI++) {
             $objWorkflow = new class_module_workflows_workflow();
             $objWorkflow->setStrClass($arrInfo["class"]);
             $objWorkflow->setStrAffectedSystemid($arrInfo["systemid"]);
             $objWorkflow->updateObjectToDb();
             $arrCreatedWorkflows[] = $objWorkflow;
         }
     }
     $this->flushDBCache();
     //3. Assert number of workflows
     foreach ($arrWorkflowsClasses as $arrInfo) {
         $arrWorkflows = class_module_workflows_workflow::getWorkflowsForSystemid($arrInfo["systemid"], false, $arrInfo["class"]);
         $this->assertEquals(count($arrWorkflows), $arrInfo["amount"]);
         $arrWorkflows = class_module_workflows_workflow::getWorkflowsForSystemid($arrInfo["systemid"], false, array($arrInfo["class"]));
         $this->assertEquals(count($arrWorkflows), $arrInfo["amount"]);
     }
     $arrWorkflows = class_module_workflows_workflow::getWorkflowsForSystemid($strSystemId1, false, array("class_workflow_workflows_messagesummary"));
     $this->assertEquals(count($arrWorkflows), 5);
     $arrWorkflows = class_module_workflows_workflow::getWorkflowsForSystemid($strSystemId2, false, array("class_workflow_workflows_dbdump", "class_workflow_workflows_messagesummary"));
     $this->assertEquals(count($arrWorkflows), 28);
     //4. Delete created workflow objects
     /** @var class_module_workflows_workflow $objWorkflow*/
     foreach ($arrCreatedWorkflows as $objWorkflow) {
         $objWorkflow->deleteObjectFromDatabase();
     }
     $this->resetCaches();
 }