mirror of
https://github.com/friendica/friendica
synced 2025-04-24 02:30:13 +00:00
Move Console namespace one level up
This commit is contained in:
parent
2628da422a
commit
d716a3326f
23 changed files with 46 additions and 44 deletions
|
@ -1,193 +0,0 @@
|
|||
<?php
|
||||
|
||||
namespace Friendica\Test\src\Core\Console;
|
||||
|
||||
use Friendica\App\Mode;
|
||||
use Friendica\Core\Console\Config;
|
||||
|
||||
/**
|
||||
* @runTestsInSeparateProcesses
|
||||
* @preserveGlobalState disabled
|
||||
* @requires PHP 7.0
|
||||
*/
|
||||
class ConfigConsoleTest extends ConsoleTest
|
||||
{
|
||||
protected function setUp()
|
||||
{
|
||||
parent::setUp();
|
||||
|
||||
$this->mockApp($this->root);
|
||||
|
||||
\Mockery::getConfiguration()->setConstantsMap([
|
||||
Mode::class => [
|
||||
'DBCONFIGAVAILABLE' => 0
|
||||
]
|
||||
]);
|
||||
|
||||
$this->mode
|
||||
->shouldReceive('has')
|
||||
->andReturn(true);
|
||||
|
||||
}
|
||||
|
||||
function testSetGetKeyValue() {
|
||||
$this->configMock
|
||||
->shouldReceive('set')
|
||||
->with('config', 'test', 'now')
|
||||
->andReturn(true)
|
||||
->once();
|
||||
$this->configMock
|
||||
->shouldReceive('get')
|
||||
->with('config', 'test')
|
||||
->andReturn('now')
|
||||
->twice();
|
||||
|
||||
$console = new Config($this->consoleArgv);
|
||||
$console->setArgument(0, 'config');
|
||||
$console->setArgument(1, 'test');
|
||||
$console->setArgument(2, 'now');
|
||||
$txt = $this->dumpExecute($console);
|
||||
$this->assertEquals("config.test <= now\n", $txt);
|
||||
|
||||
$this->configMock
|
||||
->shouldReceive('get')
|
||||
->with('config', 'test')
|
||||
->andReturn('now')
|
||||
->once();
|
||||
|
||||
$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->configMock
|
||||
->shouldReceive('get')
|
||||
->with('config', 'test')
|
||||
->andReturn(null)
|
||||
->once();
|
||||
|
||||
$console = new Config($this->consoleArgv);
|
||||
$console->setArgument(0, 'config');
|
||||
$console->setArgument(1, 'test');
|
||||
$txt = $this->dumpExecute($console);
|
||||
$this->assertEquals("config.test => \n", $txt);
|
||||
}
|
||||
|
||||
function testSetArrayValue() {
|
||||
$testArray = [1, 2, 3];
|
||||
$this->configMock
|
||||
->shouldReceive('get')
|
||||
->with('config', 'test')
|
||||
->andReturn($testArray)
|
||||
->once();
|
||||
|
||||
$console = new Config($this->consoleArgv);
|
||||
$console->setArgument(0, 'config');
|
||||
$console->setArgument(1, 'test');
|
||||
$console->setArgument(2, 'now');
|
||||
$txt = $this->dumpExecute($console);
|
||||
|
||||
$this->assertEquals("[Error] config.test is an array and can't be set using this command.\n", $txt);
|
||||
}
|
||||
|
||||
function testTooManyArguments() {
|
||||
$console = new Config($this->consoleArgv);
|
||||
$console->setArgument(0, 'config');
|
||||
$console->setArgument(1, 'test');
|
||||
$console->setArgument(2, 'it');
|
||||
$console->setArgument(3, 'now');
|
||||
$txt = $this->dumpExecute($console);
|
||||
$assertion = '[Warning] Too many arguments';
|
||||
$firstline = substr($txt, 0, strlen($assertion));
|
||||
$this->assertEquals($assertion, $firstline);
|
||||
}
|
||||
|
||||
function testVerbose() {
|
||||
$this->configMock
|
||||
->shouldReceive('get')
|
||||
->with('test', 'it')
|
||||
->andReturn('now')
|
||||
->once();
|
||||
$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}
|
||||
Class: Friendica\Core\Console\Config
|
||||
Arguments: array (
|
||||
0 => 'test',
|
||||
1 => 'it',
|
||||
)
|
||||
Options: array (
|
||||
'v' => 1,
|
||||
)
|
||||
test.it => now
|
||||
|
||||
CONF;
|
||||
$txt = $this->dumpExecute($console);
|
||||
$this->assertEquals($assertion, $txt);
|
||||
}
|
||||
|
||||
function testUnableToSet() {
|
||||
$this->configMock
|
||||
->shouldReceive('set')
|
||||
->with('test', 'it', 'now')
|
||||
->andReturn(false)
|
||||
->once();
|
||||
$this->configMock
|
||||
->shouldReceive('get')
|
||||
->with('test', 'it')
|
||||
->andReturn(NULL)
|
||||
->once();
|
||||
$console = new Config();
|
||||
$console->setArgument(0, 'test');
|
||||
$console->setArgument(1, 'it');
|
||||
$console->setArgument(2, 'now');
|
||||
$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.config.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);
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue