本文整理汇总了PHP中PhpSpec\Console\IO::askConfirmation方法的典型用法代码示例。如果您正苦于以下问题:PHP IO::askConfirmation方法的具体用法?PHP IO::askConfirmation怎么用?PHP IO::askConfirmation使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PhpSpec\Console\IO
的用法示例。
在下文中一共展示了IO::askConfirmation方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: generate
/**
* @param ResourceInterface $resource
* @param array $data
*/
public function generate(ResourceInterface $resource, array $data)
{
$destination = $this->getSavePath($resource);
if (file_exists($destination) && !$this->io->askConfirmation(sprintf('File "%s" already exists. Overwrite?', basename($destination)), false)) {
return;
}
$directory = dirname($destination);
if (!file_exists($directory)) {
$this->createDir($directory);
}
$code = $this->generateCodeForResource($resource, $data);
$this->filesystem->putFileContents($destination, $code);
$this->io->writeln($this->getPromptMessage($resource, $resource->getSrcFilename()));
}
示例2: afterSuite
/**
* @param SuiteEvent $event
*/
public function afterSuite(SuiteEvent $event)
{
if (!$this->io->isCodeGenerationEnabled()) {
return;
}
foreach ($this->exceptions as $exception) {
$resource = $this->resources->createResource($exception->getCollaboratorName());
if ($this->resourceIsInSpecNamespace($exception, $resource)) {
continue;
}
if ($this->io->askConfirmation(sprintf('Would you like me to generate an interface `%s` for you?', $exception->getCollaboratorName()))) {
$this->generator->generate($resource, 'interface');
$event->markAsWorthRerunning();
}
}
}
示例3: afterSuite
public function afterSuite(SuiteEvent $event)
{
if (!$this->io->isCodeGenerationEnabled()) {
return;
}
if (!$this->io->isFakingEnabled()) {
return;
}
foreach ($this->nullMethods as $methodString => $failedCall) {
$failedCall['expected'] = array_unique($failedCall['expected']);
if (count($failedCall['expected']) > 1) {
continue;
}
$expected = current($failedCall['expected']);
$class = $failedCall['class'];
$message = sprintf('Do you want me to make `%s()` always return %s for you?', $methodString, var_export($expected, true));
try {
$resource = $this->resources->createResource($class);
} catch (\RuntimeException $exception) {
continue;
}
if ($this->io->askConfirmation($message)) {
$this->generator->generate($resource, 'returnConstant', array('method' => $failedCall['method'], 'expected' => $expected));
$event->markAsWorthRerunning();
}
}
}
示例4:
function it_does_not_generate_interface_when_prompt_is_answered_with_no(IO $io, ExampleEvent $exampleEvent, SuiteEvent $suiteEvent, GeneratorManager $generator)
{
$io->askConfirmation('Would you like me to generate an interface `Example\\ExampleClass` for you?')->willReturn(false);
$this->afterExample($exampleEvent);
$this->afterSuite($suiteEvent);
$generator->generate(Argument::cetera())->shouldNotHaveBeenCalled();
$suiteEvent->markAsWorthRerunning()->shouldNotHaveBeenCalled();
}
示例5:
function it_prompts_and_warns_when_one_method_name_is_correct_but_other_reserved($exampleEvent, SuiteEvent $suiteEvent, IO $io, NameCheckerInterface $nameChecker)
{
$this->callAfterExample($exampleEvent, $nameChecker, 'throw', false);
$this->callAfterExample($exampleEvent, $nameChecker, 'foo');
$io->writeBrokenCodeBlock("I cannot generate the method 'throw' for you because it is a reserved keyword", 2)->shouldBeCalled();
$io->askConfirmation('Do you want me to create `stdClass::foo()` for you?')->shouldBeCalled();
$suiteEvent->markAsNotWorthRerunning()->shouldBeCalled();
$this->afterSuite($suiteEvent);
}
示例6: afterSuite
/**
* @param SuiteEvent $event
*/
public function afterSuite(SuiteEvent $event)
{
foreach ($this->interfaces as $interface => $methods) {
try {
$resource = $this->resources->createResource($interface);
} catch (ResourceCreationException $e) {
continue;
}
foreach ($methods as $method => $arguments) {
if ($this->io->askConfirmation(sprintf(self::PROMPT, $interface, $method))) {
$this->generator->generate($resource, 'method-signature', array('name' => $method, 'arguments' => $this->getRealArguments($arguments)));
$event->markAsWorthRerunning();
}
}
}
}
示例7: userAborts
/**
* @param string $filepath
*
* @return bool
*/
private function userAborts($filepath)
{
$message = sprintf('File "%s" already exists. Overwrite?', basename($filepath));
return !$this->io->askConfirmation($message, false);
}
示例8:
function it_marks_the_suite_as_being_worth_rerunning_when_generation_happens(IO $io, ExampleEvent $event, SuiteEvent $suiteEvent, MethodNotFoundException $exception)
{
$io->askConfirmation(Argument::any())->willReturn(true);
$exception->getClassname()->willReturn('spec\\PhpSpec\\Listener\\DoubleOfInterface');
$exception->getMethodName()->willReturn('aMethod');
$this->afterExample($event);
$this->afterSuite($suiteEvent);
$suiteEvent->markAsWorthRerunning()->shouldHaveBeenCalled();
}
示例9: array
function it_invokes_method_body_generation_when_prompt_is_answered_yes(MethodCallEvent $methodCallEvent, ExampleEvent $exampleEvent, IO $io, GeneratorManager $generatorManager, ResourceManager $resourceManager, ResourceInterface $resource, SuiteEvent $event)
{
$io->askConfirmation(Argument::any())->willReturn(true);
$resourceManager->createResource(Argument::any())->willReturn($resource);
$methodCallEvent->getSubject()->willReturn(new \StdClass());
$methodCallEvent->getMethod()->willReturn('myMethod');
$this->afterMethodCall($methodCallEvent);
$this->afterExample($exampleEvent);
$this->afterSuite($event);
$generatorManager->generate($resource, 'returnConstant', array('method' => 'myMethod', 'expected' => 100))->shouldHaveBeenCalled();
}
示例10: let
function let(IO $io, ResourceManager $resourceManager, GeneratorManager $generatorManager, SuiteEvent $suiteEvent, ExampleEvent $exampleEvent)
{
$io->writeln(Argument::any())->willReturn();
$io->askConfirmation(Argument::any())->willReturn();
$this->beConstructedWith($io, $resourceManager, $generatorManager);
}