setDefinition([
new InputArgument('group', InputArgument::REQUIRED, 'Group class name'),
]);
}
public function getDescription()
{
return 'Generates Group subscriber';
}
public function execute(InputInterface $input, OutputInterface $output)
{
$config = $this->getGlobalConfig();
$group = $input->getArgument('group');
$class = ucfirst($group);
$path = $this->createDirectoryFor(Configuration::supportDir() . 'Group' . DIRECTORY_SEPARATOR, $class);
$filename = $path . $class . '.php';
$gen = new GroupGenerator($config, $group);
$res = $this->createFile($filename, $gen->produce());
if (!$res) {
$output->writeln("Group $filename already exists");
return;
}
$output->writeln("Group extension was created in $filename");
$output->writeln(
'To use this group extension, include it to "extensions" option of global Codeception config.'
);
}
}