You are here

public function SimpleProcessTest::testKillSignalTerminatesProcessCleanly in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 vendor/symfony/process/Tests/SimpleProcessTest.php \Symfony\Component\Process\Tests\SimpleProcessTest::testKillSignalTerminatesProcessCleanly()

File

vendor/symfony/process/Tests/SimpleProcessTest.php, line 162

Class

SimpleProcessTest

Namespace

Symfony\Component\Process\Tests

Code

public function testKillSignalTerminatesProcessCleanly() {
  $this
    ->expectExceptionIfPHPSigchild('Symfony\\Component\\Process\\Exception\\RuntimeException', 'This PHP has been compiled with --enable-sigchild. The process can not be signaled.');
  try {
    $process = $this
      ->getProcess(self::$phpBin . ' -r "echo \'foo\'; sleep(1); echo \'bar\';"');
    $process
      ->run(function () use ($process) {
      if ($process
        ->isRunning()) {
        $process
          ->signal(defined('SIGKILL') ? SIGKILL : 9);
      }
    });
  } catch (\RuntimeException $e) {
    $this
      ->fail('A call to signal() is not expected to cause wait() to throw a RuntimeException');
  }
}