PluginProbe
UpStream: a Project Management Plugin for WordPress / trunk
UpStream: a Project Management Plugin for WordPress vtrunk
trunk 1.39.0 1.39.1 1.39.2 1.39.3 2.0.7 2.1.0
upstream / vendor / symfony / process / Tests / ErrorProcessInitiator.php

ErrorProcessInitiator.php in UpStream: a Project Management Plugin for WordPress trunk, at vendor/symfony/process/Tests/ErrorProcessInitiator.php

37 lines 926 B
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 /*
4 * This file is part of the Symfony package.
5 *
6 * (c) Fabien Potencier <fabien@symfony.com>
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11
12 namespace Symfony\Component\Process\Tests;
13
14 use Symfony\Component\Process\Exception\ProcessTimedOutException;
15 use Symfony\Component\Process\Process;
16
17 require \dirname(__DIR__).'/vendor/autoload.php';
18
19 list('e' => $php) = getopt('e:') + ['e' => 'php'];
20
21 try {
22 $process = new Process("exec $php -r \"echo 'ready'; trigger_error('error', E_USER_ERROR);\"");
23 $process->start();
24 $process->setTimeout(0.5);
25 while (false === strpos($process->getOutput(), 'ready')) {
26 usleep(1000);
27 }
28 $process->signal(\SIGSTOP);
29 $process->wait();
30
31 return $process->getExitCode();
32 } catch (ProcessTimedOutException $t) {
33 echo $t->getMessage().\PHP_EOL;
34
35 return 1;
36 }
37