本文整理汇总了PHP中Symfony\Component\Console\Tester\ApplicationTester类的典型用法代码示例。如果您正苦于以下问题:PHP ApplicationTester类的具体用法?PHP ApplicationTester怎么用?PHP ApplicationTester使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了ApplicationTester类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testRunWithConfigThrowExceptionIfExtensionClassDoesNotImplementsInterface
public function testRunWithConfigThrowExceptionIfExtensionClassDoesNotImplementsInterface()
{
$application = new ApplicationTester($this->carew);
$statusCode = $application->run(array('command' => 'list', '--base-dir' => __DIR__ . '/Command/fixtures/config-exception-class-not-implements'));
$this->assertSame(1, $statusCode);
$this->assertContains('The class "stdClass" does not implements ExtensionInterface. See "config.yml".', $application->getDisplay());
}
示例2: testUserCreationWithOptions
public function testUserCreationWithOptions()
{
$kernel = $this->createKernel();
$command = new CreateUserCommand();
$application = new Application($kernel);
$application->setAutoExit(false);
$tester = new ApplicationTester($application);
$username = 'test_username';
$password = 'test_password';
$email = 'test_email@email.org';
$tester->run(array(
'command' => $command->getFullName(),
'username' => $username,
'password' => $password,
'email' => $email,
'--inactive' => true,
'--super-admin' => true
), array('interactive' => false, 'decorated' => false, 'verbosity' => Output::VERBOSITY_VERBOSE));
$userManager = $this->getService('fos_user.user_manager');
$user = $userManager->findUserByUsername($username);
$this->assertTrue($user instanceof User);
$this->assertEquals($email, $user->getEmail());
$this->assertFalse($user->isEnabled());
$this->assertTrue($user->hasRole('ROLE_SUPERADMIN'));
$userManager->deleteUser($user);
}
示例3: runCommand
/**
* Using the cli application itself, execute a command that already exists
*
* @param string $command
* @param array $arguments
* @return ApplicationTester
*/
protected function runCommand($command, array $arguments = [])
{
$applicationTester = new ApplicationTester($this->getCli());
$arguments = array_merge(['command' => $command], $arguments);
$applicationTester->run($arguments);
return $applicationTester;
}
示例4: testUserActivation
public function testUserActivation()
{
$kernel = $this->createKernel();
$command = new ActivateUserCommand();
$application = new Application($kernel);
$application->setAutoExit(false);
$tester = new ApplicationTester($application);
$username = 'test_username';
$password = 'test_password';
$email = 'test_email@email.org';
$userManager = $this->getService('fos_user.user_manager');
$user = $userManager->createUser();
$user->setUsername($username);
$user->setEmail($email);
$user->setPlainPassword($password);
$user->setEnabled(false);
$userManager->updateUser($user);
$this->assertFalse($user->isEnabled());
$tester->run(array('command' => $command->getFullName(), 'username' => $username), array('interactive' => false, 'decorated' => false, 'verbosity' => Output::VERBOSITY_VERBOSE));
$this->getService('doctrine.orm.default_entity_manager')->clear();
$userManager = $this->getService('fos_user.user_manager');
$user = $userManager->findUserByUsername($username);
$this->assertTrue($user instanceof User);
$this->assertTrue($user->isEnabled());
$userManager->updateUser($user);
}
示例5: testPromotion
public function testPromotion()
{
$kernel = $this->createKernel();
$command = new PromoteSuperAdminCommand();
$application = new Application($kernel);
$application->setAutoExit(false);
$tester = new ApplicationTester($application);
$username = 'test_username';
$password = 'test_password';
$email = 'test_email@email.org';
$userManager = $kernel->getContainer()->get('fos_user.user_manager');
$user = $userManager->createUser();
$user->setUsername($username);
$user->setEmail($email);
$user->setPlainPassword($password);
$userManager->updateUser($user);
$this->assertFalse($user->hasRole('ROLE_SUPERADMIN'));
$tester->run(array(
'command' => $command->getFullName(),
'username' => $username,
), array('interactive' => false, 'decorated' => false, 'verbosity' => Output::VERBOSITY_VERBOSE));
$userManager = $this->getService('fos_user.user_manager');
$user = $userManager->findUserByUsername($username);
$this->assertTrue($user instanceof User);
$this->assertTrue($user->hasRole('ROLE_SUPERADMIN'));
$userManager->deleteUser($user);
}
示例6: shouldExecuteSuccessfully
/**
* @test
*/
public function shouldExecuteSuccessfully()
{
$app = new Application($this->srcDir, 'PHP Test Reporter', '1.0.0');
$app->setAutoExit(false);
$tester = new ApplicationTester($app);
$status = $tester->run(['--stdout' => true]);
$this->assertEquals(0, $status);
}
示例7: testRun
public function testRun()
{
$application = new Application();
$application->setAutoExit(false);
$applicationTester = new ApplicationTester($application);
$applicationTester->run([]);
$this->assertContains('WebHelper version 0.2', $applicationTester->getDisplay([]));
}
示例8: testExecute
public function testExecute()
{
$application = new Stratum();
$application->setAutoExit(false);
$tester = new ApplicationTester($application);
$tester->run(['config file' => 'test/MySql/etc/stratum.cfg']);
$this->assertSame(0, $tester->getStatusCode(), $tester->getDisplay());
}
示例9: run
/**
* @param string $command
*
* @return integer
*/
private function run($command)
{
$application = $this->createApplication();
$application->setAutoExit(false);
$this->applicationTester = new ApplicationTester($application);
$this->outputFile = tempnam('.', 'phpeg');
return $this->applicationTester->run(array('command' => $command, 'input-file' => $this->inputFile, 'output-file' => $this->outputFile));
}
示例10: testLoadedCommandRuns
public function testLoadedCommandRuns()
{
$this->markTestSkipped('The ' . __CLASS__ . ' Symfony ... Console App ... so difficult to extend and test :[');
$consoleApp = new Console();
$consoleApp->setAutoExit(false);
$tester = new ApplicationTester($consoleApp);
$tester->run(array('command' => 'test:command', 'name' => 'Skip', '--skip-app-path' => './tests/fixtures/app'));
$this->assertContains('Nice name you got there, Skip.', $tester->getDisplay());
}
示例11: testAddsCommands
/**
* @covers ImboCli\Application::__construct
*/
public function testAddsCommands()
{
$application = new Application();
$application->setAutoExit(false);
$applicationTester = new ApplicationTester($application);
$applicationTester->run(array('command' => 'list'));
$output = $applicationTester->getDisplay();
$this->assertContains('generate-private-key', $output);
}
示例12: testDebugOutput
/**
* Confirm that all the core commands with bootstrap level
* `BOOT_SUGAR_ROOT` will be available by default.
*/
public function testDebugOutput()
{
$kernel = $this->getKernel(Kernel::BOOT_INSULIN, null, true);
$insulin = new Application($kernel);
$insulin->setAutoExit(false);
$insulinTester = new ApplicationTester($insulin);
$insulinTester->run(array('command' => 'list'));
$this->assertRegExp('/Memory usage: (.*)MB \\(peak: (.*)MB\\), time: (.*)s/', $insulinTester->getDisplay());
}
示例13: testInvalidConnectionCausesError
public function testInvalidConnectionCausesError()
{
$kernel = $this->createKernel('badconn.yml');
$console = new Application($kernel);
$console->setAutoExit(false);
$tester = new ApplicationTester($console);
$this->assertGreaterThan(0, $tester->run(['pheanstalk:stats', 'tube' => ['default']]));
$this->assertContains('Pheanstalk\\Exception', $tester->getDisplay());
}
示例14: testExecute
public function testExecute()
{
self::bootKernel();
$application = new Application(static::$kernel);
$application->setCatchExceptions(false);
$application->setAutoExit(false);
$tester = new ApplicationTester($application);
$tester->run(['command' => 'api:swagger:export']);
$this->assertJson($tester->getDisplay());
}
示例15: testVerboseBuildForProject
public function testVerboseBuildForProject()
{
$project = $this->getMockBuilder('Sismo\\Project')->disableOriginalConstructor()->getMock();
$this->app['sismo']->expects($this->once())->method('hasProject')->will($this->returnValue(true));
$this->app['sismo']->expects($this->once())->method('getProject')->will($this->returnValue($project));
$this->app['sismo']->expects($this->once())->method('build');
$tester = new ApplicationTester($this->console);
$this->assertEquals(0, $tester->run(array('command' => 'build', 'slug' => 'Twig', '--verbose' => true)));
$this->assertEquals('Building Project "" (into "d41d8c")', trim($tester->getDisplay()));
}