2014-10-09 01:47:35 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @group GlobalFunctions
|
|
|
|
|
* @covers ::wfEscapeShellArg
|
|
|
|
|
*/
|
2015-10-03 19:17:00 +00:00
|
|
|
class WfEscapeShellArgTest extends MediaWikiTestCase {
|
2014-10-09 01:47:35 +00:00
|
|
|
public function testSingleInput() {
|
|
|
|
|
if ( wfIsWindows() ) {
|
|
|
|
|
$expected = '"blah"';
|
|
|
|
|
} else {
|
|
|
|
|
$expected = "'blah'";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$actual = wfEscapeShellArg( 'blah' );
|
|
|
|
|
|
|
|
|
|
$this->assertEquals( $expected, $actual );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function testMultipleArgs() {
|
|
|
|
|
if ( wfIsWindows() ) {
|
|
|
|
|
$expected = '"foo" "bar" "baz"';
|
|
|
|
|
} else {
|
|
|
|
|
$expected = "'foo' 'bar' 'baz'";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$actual = wfEscapeShellArg( 'foo', 'bar', 'baz' );
|
|
|
|
|
|
|
|
|
|
$this->assertEquals( $expected, $actual );
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function testMultipleArgsAsArray() {
|
|
|
|
|
if ( wfIsWindows() ) {
|
|
|
|
|
$expected = '"foo" "bar" "baz"';
|
|
|
|
|
} else {
|
|
|
|
|
$expected = "'foo' 'bar' 'baz'";
|
|
|
|
|
}
|
|
|
|
|
|
2016-02-17 09:09:32 +00:00
|
|
|
$actual = wfEscapeShellArg( [ 'foo', 'bar', 'baz' ] );
|
2014-10-09 01:47:35 +00:00
|
|
|
|
|
|
|
|
$this->assertEquals( $expected, $actual );
|
|
|
|
|
}
|
|
|
|
|
}
|