X-Git-Url: http://aleph1.co.uk/gitweb/?a=blobdiff_plain;f=vendor%2Fsymfony%2Fprocess%2FTests%2FProcessBuilderTest.php;h=c98b8730538fcf6aca3d27f50c68582bc4c2345d;hb=0bf8d09d2542548982e81a441b1f16e75873a04f;hp=3faa50c551c7044161d122433f95618d75726b38;hpb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae;p=yaffs-website diff --git a/vendor/symfony/process/Tests/ProcessBuilderTest.php b/vendor/symfony/process/Tests/ProcessBuilderTest.php index 3faa50c55..c98b87305 100644 --- a/vendor/symfony/process/Tests/ProcessBuilderTest.php +++ b/vendor/symfony/process/Tests/ProcessBuilderTest.php @@ -14,21 +14,25 @@ namespace Symfony\Component\Process\Tests; use PHPUnit\Framework\TestCase; use Symfony\Component\Process\ProcessBuilder; +/** + * @group legacy + */ class ProcessBuilderTest extends TestCase { public function testInheritEnvironmentVars() { - $_ENV['MY_VAR_1'] = 'foo'; - $proc = ProcessBuilder::create() ->add('foo') ->getProcess(); - unset($_ENV['MY_VAR_1']); + $this->assertTrue($proc->areEnvironmentVariablesInherited()); + + $proc = ProcessBuilder::create() + ->add('foo') + ->inheritEnvironmentVariables(false) + ->getProcess(); - $env = $proc->getEnv(); - $this->assertArrayHasKey('MY_VAR_1', $env); - $this->assertEquals('foo', $env['MY_VAR_1']); + $this->assertFalse($proc->areEnvironmentVariablesInherited()); } public function testAddEnvironmentVariables() @@ -42,29 +46,12 @@ class ProcessBuilderTest extends TestCase ->add('command') ->setEnv('foo', 'bar2') ->addEnvironmentVariables($env) - ->inheritEnvironmentVariables(false) ->getProcess() ; $this->assertSame($env, $proc->getEnv()); } - public function testProcessShouldInheritAndOverrideEnvironmentVars() - { - $_ENV['MY_VAR_1'] = 'foo'; - - $proc = ProcessBuilder::create() - ->setEnv('MY_VAR_1', 'bar') - ->add('foo') - ->getProcess(); - - unset($_ENV['MY_VAR_1']); - - $env = $proc->getEnv(); - $this->assertArrayHasKey('MY_VAR_1', $env); - $this->assertEquals('bar', $env['MY_VAR_1']); - } - /** * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException */ @@ -103,15 +90,15 @@ class ProcessBuilderTest extends TestCase $pb->setPrefix('/usr/bin/php'); $proc = $pb->setArguments(array('-v'))->getProcess(); - if ('\\' === DIRECTORY_SEPARATOR) { - $this->assertEquals('"/usr/bin/php" "-v"', $proc->getCommandLine()); + if ('\\' === \DIRECTORY_SEPARATOR) { + $this->assertEquals('"/usr/bin/php" -v', $proc->getCommandLine()); } else { $this->assertEquals("'/usr/bin/php' '-v'", $proc->getCommandLine()); } $proc = $pb->setArguments(array('-i'))->getProcess(); - if ('\\' === DIRECTORY_SEPARATOR) { - $this->assertEquals('"/usr/bin/php" "-i"', $proc->getCommandLine()); + if ('\\' === \DIRECTORY_SEPARATOR) { + $this->assertEquals('"/usr/bin/php" -i', $proc->getCommandLine()); } else { $this->assertEquals("'/usr/bin/php' '-i'", $proc->getCommandLine()); } @@ -123,15 +110,15 @@ class ProcessBuilderTest extends TestCase $pb->setPrefix(array('/usr/bin/php', 'composer.phar')); $proc = $pb->setArguments(array('-v'))->getProcess(); - if ('\\' === DIRECTORY_SEPARATOR) { - $this->assertEquals('"/usr/bin/php" "composer.phar" "-v"', $proc->getCommandLine()); + if ('\\' === \DIRECTORY_SEPARATOR) { + $this->assertEquals('"/usr/bin/php" composer.phar -v', $proc->getCommandLine()); } else { $this->assertEquals("'/usr/bin/php' 'composer.phar' '-v'", $proc->getCommandLine()); } $proc = $pb->setArguments(array('-i'))->getProcess(); - if ('\\' === DIRECTORY_SEPARATOR) { - $this->assertEquals('"/usr/bin/php" "composer.phar" "-i"', $proc->getCommandLine()); + if ('\\' === \DIRECTORY_SEPARATOR) { + $this->assertEquals('"/usr/bin/php" composer.phar -i', $proc->getCommandLine()); } else { $this->assertEquals("'/usr/bin/php' 'composer.phar' '-i'", $proc->getCommandLine()); } @@ -142,8 +129,8 @@ class ProcessBuilderTest extends TestCase $pb = new ProcessBuilder(array('%path%', 'foo " bar', '%baz%baz')); $proc = $pb->getProcess(); - if ('\\' === DIRECTORY_SEPARATOR) { - $this->assertSame('^%"path"^% "foo \\" bar" "%baz%baz"', $proc->getCommandLine()); + if ('\\' === \DIRECTORY_SEPARATOR) { + $this->assertSame('""^%"path"^%"" "foo "" bar" ""^%"baz"^%"baz"', $proc->getCommandLine()); } else { $this->assertSame("'%path%' 'foo \" bar' '%baz%baz'", $proc->getCommandLine()); } @@ -155,8 +142,8 @@ class ProcessBuilderTest extends TestCase $pb->setPrefix('%prefix%'); $proc = $pb->getProcess(); - if ('\\' === DIRECTORY_SEPARATOR) { - $this->assertSame('^%"prefix"^% "arg"', $proc->getCommandLine()); + if ('\\' === \DIRECTORY_SEPARATOR) { + $this->assertSame('""^%"prefix"^%"" arg', $proc->getCommandLine()); } else { $this->assertSame("'%prefix%' 'arg'", $proc->getCommandLine()); } @@ -176,7 +163,7 @@ class ProcessBuilderTest extends TestCase ->setPrefix('/usr/bin/php') ->getProcess(); - if ('\\' === DIRECTORY_SEPARATOR) { + if ('\\' === \DIRECTORY_SEPARATOR) { $this->assertEquals('"/usr/bin/php"', $process->getCommandLine()); } else { $this->assertEquals("'/usr/bin/php'", $process->getCommandLine()); @@ -188,7 +175,7 @@ class ProcessBuilderTest extends TestCase $process = ProcessBuilder::create(array('/usr/bin/php')) ->getProcess(); - if ('\\' === DIRECTORY_SEPARATOR) { + if ('\\' === \DIRECTORY_SEPARATOR) { $this->assertEquals('"/usr/bin/php"', $process->getCommandLine()); } else { $this->assertEquals("'/usr/bin/php'", $process->getCommandLine()); @@ -216,11 +203,24 @@ class ProcessBuilderTest extends TestCase /** * @expectedException \Symfony\Component\Process\Exception\InvalidArgumentException - * @expectedExceptionMessage Symfony\Component\Process\ProcessBuilder::setInput only accepts strings or stream resources. + * @expectedExceptionMessage Symfony\Component\Process\ProcessBuilder::setInput only accepts strings, Traversable objects or stream resources. */ public function testInvalidInput() { $builder = ProcessBuilder::create(); $builder->setInput(array()); } + + public function testDoesNotPrefixExec() + { + if ('\\' === \DIRECTORY_SEPARATOR) { + $this->markTestSkipped('This test cannot run on Windows.'); + } + + $builder = ProcessBuilder::create(array('command', '-v', 'ls')); + $process = $builder->getProcess(); + $process->run(); + + $this->assertTrue($process->isSuccessful()); + } }