/**
  * 
  * Initializes the framework for all the tests
  */
 protected function initFramework(&$result = null)
 {
     //if we got codeCoverage then we add the rest of the server folders
     $codeCoverageFilter = PHP_CodeCoverage_Filter::getInstance();
     if ($codeCoverageFilter) {
         $testsBaseDir = dirname(__FILE__);
         $whiteList = $codeCoverageFilter->getWhitelist();
         if (!in_array("{$testsBaseDir}/../../api_v3", $whiteList)) {
             //				KalturaLog::debug("Adding" . $testsBaseDir . "/../../api_v3" . "to the CodeCoverage filter\n");
             //$codeCoverageFilter->addDirectoryToWhitelist($testsBaseDir . "/../../api_v3/services");
             //$codeCoverageFilter->addDirectoryToWhitelist($testsBaseDir . "/../../api_v3/lib");
         }
         if (!in_array("{$testsBaseDir}/../../plugins", $whiteList)) {
             //				KalturaLog::debug("Adding" . $testsBaseDir . "/../../plugins" . "to the CodeCoverage filter\n");
             //				$codeCoverageFilter->addDirectoryToWhitelist($testsBaseDir . "/../../plugins");
         }
     }
     if ($result) {
         if ($result instanceof KalturaTestResult) {
             if (!$result->isListenerExists('KalturaTestListener')) {
                 KalturaLog::debug("adding KalturaTestListener to result\n");
                 $result->addListener(new KalturaTestListener());
             }
         }
     }
     if (KalturaTestCaseBase::$isFrameworkInit == false) {
         KalturaLog::debug("Initing framework\n");
         $class = get_class($this);
         $classPath = KAutoloader::getClassFilePath($class);
         KalturaTestListener::setFailureFilePath(dirname($classPath) . "/testsData/{$class}.failures");
         KalturaTestListener::setDataFilePath(dirname($classPath) . "/testsData/{$class}.data");
         KalturaTestListener::setTotalFailureFilePath(KALTURA_TESTS_PATH . "/common/totalFailures.failures");
         $result->addListener(new KalturaTestListener());
         KalturaTestCaseBase::$isFrameworkInit = true;
         //If the test case failures wasn't added
         if (KalturaTestListener::getTestCaseFailures() == null) {
             KalturaTestListener::setCurrentTestCase($class);
             //Then add the test case failure
             KalturaTestListener::setTestCaseFailures(new KalturaTestCaseFailures(KalturaTestListener::getCurrentTestCase()));
             $testCaseFailures = KalturaTestListener::getTestCaseFailures();
             $testProcedureName = $this->getName(false);
             $testProcedure = $testCaseFailures->getTestProcedureFailure($testProcedureName);
             if (!$testProcedure) {
                 $testCaseFailures->addTestProcedureFailure(new KalturaTestProcedureFailure());
             } else {
                 KalturaLog::alert("Test procedure [{$testProcedureName}] already exists");
             }
         }
     }
 }
 /**
  * 
  * Sets the listeners data file path
  * @param string $dataFilePath
  */
 public static function setDataFilePath($dataFilePath)
 {
     KalturaTestListener::$dataFilePath = $dataFilePath;
 }