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.' ); } }