Fixing some AutomaticInstallationConsoleTests
[friendica.git/.git] / tests / src / Core / Console / ConsoleTest.php
1 <?php
2
3 namespace Friendica\Test\src\Core\Console;
4
5 use Asika\SimpleConsole\Console;
6 use Friendica\Test\MockedTest;
7 use Friendica\Test\Util\AppMockTrait;
8 use Friendica\Test\Util\Intercept;
9 use Friendica\Test\Util\VFSTrait;
10
11 abstract class ConsoleTest extends MockedTest
12 {
13         use VFSTrait;
14         use AppMockTrait;
15
16         /**
17          * @var array The default argv for a Console Instance
18          */
19         protected $consoleArgv = [ 'consoleTest.php' ];
20
21         protected function setUp()
22         {
23                 parent::setUp();
24
25                 Intercept::setUp();
26
27                 $this->setUpVfsDir();
28         }
29
30         /**
31          * Dumps the execution of an console output to a string and returns it
32          *
33          * @param Console $console The current console instance
34          *
35          * @return string the output of the execution
36          */
37         protected function dumpExecute($console)
38         {
39                 Intercept::reset();
40                 $console->execute();
41                 $returnStr = Intercept::$cache;
42                 Intercept::reset();
43
44                 return $returnStr;
45         }
46 }