Example #1
0
 /**
  * Parse the skip section
  * - if skip
  * - run the code
  * - return the skip reason
  *
  * @param Zept  $zept
  * @param array $sections
  * @return \ZephirTestCase\Zept
  */
 private function hydrateSkip(Zept $zept, array $sections)
 {
     if (isset($sections['SKIPIF'])) {
         $jobResult = $this->codeRunner->runPhp($sections['SKIPIF'], $zept->getIni());
         if (!strncasecmp('skip', ltrim($jobResult['stdout']), 4)) {
             $message = '';
             if (preg_match('/^\\s*skip\\s*(.+)\\s*/i', $jobResult['stdout'], $rawMessage)) {
                 $message = substr($rawMessage[1], 2);
             }
             $zept->setSkipMessage($message);
         }
     }
     return $zept;
 }