Bugfixing executable (Mocking the executable)
This commit is contained in:
parent
92d3d77e76
commit
d75cc0cb34
3 changed files with 59 additions and 14 deletions
|
@ -224,7 +224,7 @@ CONF;
|
|||
->at($this->root)
|
||||
->setContent($config);
|
||||
|
||||
$console = new AutomaticInstallation();
|
||||
$console = new AutomaticInstallation($this->consoleArgv);
|
||||
$console->setOption('f', 'prepared.ini.php');
|
||||
|
||||
$txt = $this->dumpExecute($console);
|
||||
|
@ -249,7 +249,7 @@ CONF;
|
|||
$this->assertTrue(putenv('FRIENDICA_LANG=de'));
|
||||
$this->assertTrue(putenv('FRIENDICA_URL_PATH=/friendica'));
|
||||
|
||||
$console = new AutomaticInstallation();
|
||||
$console = new AutomaticInstallation($this->consoleArgv);
|
||||
$console->setOption('savedb', true);
|
||||
|
||||
$txt = $this->dumpExecute($console);
|
||||
|
@ -278,7 +278,7 @@ CONF;
|
|||
$this->assertTrue(putenv('FRIENDICA_LANG=de'));
|
||||
$this->assertTrue(putenv('FRIENDICA_URL_PATH=/friendica'));
|
||||
|
||||
$console = new AutomaticInstallation();
|
||||
$console = new AutomaticInstallation($this->consoleArgv);
|
||||
|
||||
$txt = $this->dumpExecute($console);
|
||||
|
||||
|
@ -301,7 +301,7 @@ CONF;
|
|||
$this->mockExistsTable('user', false, 1);
|
||||
$this->mockUpdate([false, true, true], null, 1);
|
||||
|
||||
$console = new AutomaticInstallation();
|
||||
$console = new AutomaticInstallation($this->consoleArgv);
|
||||
|
||||
$console->setOption('dbhost', $this->db_host);
|
||||
$console->setOption('dbuser', $this->db_user);
|
||||
|
@ -338,7 +338,7 @@ CONF;
|
|||
{
|
||||
$this->mockConnect(false, 1);
|
||||
|
||||
$console = new AutomaticInstallation();
|
||||
$console = new AutomaticInstallation($this->consoleArgv);
|
||||
|
||||
$txt = $this->dumpExecute($console);
|
||||
|
||||
|
@ -400,7 +400,7 @@ Examples
|
|||
|
||||
HELP;
|
||||
|
||||
$console = new AutomaticInstallation();
|
||||
$console = new AutomaticInstallation($this->consoleArgv);
|
||||
$console->setOption('help', true);
|
||||
|
||||
$txt = $this->dumpExecute($console);
|
||||
|
|
|
@ -33,7 +33,7 @@ class ConfigConsoleTest extends ConsoleTest
|
|||
|
||||
function testSetGetKeyValue() {
|
||||
$this->mockConfigSet('config', 'test', 'now', 1);
|
||||
$console = new Config();
|
||||
$console = new Config($this->consoleArgv);
|
||||
$console->setArgument(0, 'config');
|
||||
$console->setArgument(1, 'test');
|
||||
$console->setArgument(2, 'now');
|
||||
|
@ -41,14 +41,14 @@ class ConfigConsoleTest extends ConsoleTest
|
|||
$this->assertEquals("config.test <= now\n", $txt);
|
||||
|
||||
$this->mockConfigGet('config', 'test', 'now', 1);
|
||||
$console = new Config();
|
||||
$console = new Config($this->consoleArgv);
|
||||
$console->setArgument(0, 'config');
|
||||
$console->setArgument(1, 'test');
|
||||
$txt = $this->dumpExecute($console);
|
||||
$this->assertEquals("config.test => now\n", $txt);
|
||||
|
||||
$this->mockConfigGet('config', 'test', null, 1);
|
||||
$console = new Config();
|
||||
$console = new Config($this->consoleArgv);
|
||||
$console->setArgument(0, 'config');
|
||||
$console->setArgument(1, 'test');
|
||||
$txt = $this->dumpExecute($console);
|
||||
|
@ -59,7 +59,7 @@ class ConfigConsoleTest extends ConsoleTest
|
|||
$testArray = [1, 2, 3];
|
||||
$this->mockConfigGet('config', 'test', $testArray, 1);
|
||||
|
||||
$console = new Config();
|
||||
$console = new Config($this->consoleArgv);
|
||||
$console->setArgument(0, 'config');
|
||||
$console->setArgument(1, 'test');
|
||||
$console->setArgument(2, 'now');
|
||||
|
@ -69,7 +69,7 @@ class ConfigConsoleTest extends ConsoleTest
|
|||
}
|
||||
|
||||
function testTooManyArguments() {
|
||||
$console = new Config();
|
||||
$console = new Config($this->consoleArgv);
|
||||
$console->setArgument(0, 'config');
|
||||
$console->setArgument(1, 'test');
|
||||
$console->setArgument(2, 'it');
|
||||
|
@ -82,12 +82,13 @@ class ConfigConsoleTest extends ConsoleTest
|
|||
|
||||
function testVerbose() {
|
||||
$this->mockConfigGet('test', 'it', 'now', 1);
|
||||
$console = new Config();
|
||||
$console = new Config($this->consoleArgv);
|
||||
$console->setArgument(0, 'test');
|
||||
$console->setArgument(1, 'it');
|
||||
$console->setOption('v', 1);
|
||||
$executable = $this->consoleArgv[0];
|
||||
$assertion = <<<CONF
|
||||
Executable: -
|
||||
Executable: {$executable}
|
||||
Class: Friendica\Core\Console\Config
|
||||
Arguments: array (
|
||||
0 => 'test',
|
||||
|
@ -112,4 +113,45 @@ CONF;
|
|||
$txt = $this->dumpExecute($console);
|
||||
$this->assertSame("Unable to set test.it\n", $txt);
|
||||
}
|
||||
|
||||
public function testGetHelp()
|
||||
{
|
||||
// Usable to purposely fail if new commands are added without taking tests into account
|
||||
$theHelp = <<<HELP
|
||||
console config - Manage site configuration
|
||||
Synopsis
|
||||
bin/console config [-h|--help|-?] [-v]
|
||||
bin/console config <category> [-h|--help|-?] [-v]
|
||||
bin/console config <category> <key> [-h|--help|-?] [-v]
|
||||
bin/console config <category> <key> <value> [-h|--help|-?] [-v]
|
||||
|
||||
Description
|
||||
bin/console config
|
||||
Lists all config values
|
||||
|
||||
bin/console config <category>
|
||||
Lists all config values in the provided category
|
||||
|
||||
bin/console config <category> <key>
|
||||
Shows the value of the provided key in the category
|
||||
|
||||
bin/console config <category> <key> <value>
|
||||
Sets the value of the provided key in the category
|
||||
|
||||
Notes:
|
||||
Setting config entries which are manually set in config/local.ini.php may result in
|
||||
conflict between database settings and the manual startup settings.
|
||||
|
||||
Options
|
||||
-h|--help|-? Show help information
|
||||
-v Show more debug information.
|
||||
|
||||
HELP;
|
||||
$console = new Config($this->consoleArgv);
|
||||
$console->setOption('help', true);
|
||||
|
||||
$txt = $this->dumpExecute($console);
|
||||
|
||||
$this->assertEquals($txt, $theHelp);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -13,7 +13,10 @@ abstract class ConsoleTest extends TestCase
|
|||
use VFSTrait;
|
||||
use AppMockTrait;
|
||||
|
||||
protected $stdout;
|
||||
/**
|
||||
* @var array The default argv for a Console Instance
|
||||
*/
|
||||
protected $consoleArgv = [ 'consoleTest.php' ];
|
||||
|
||||
protected function setUp()
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue