}> */ protected array $teaData = [ [ 'title' => 'Darjeeling', 'description' => 'I love that tea!', 'sys_language_uid' => 0, ], [ 'title' => 'Earl Grey', 'description' => 'A nice tea!', 'sys_language_uid' => 0, ], ]; protected function configure(): void { $this ->setHelp('Create test data for the tea extension in an already existing page (sysfolder).') ->addArgument( 'pageId', InputArgument::REQUIRED, 'Existing sysfolder page id.' ) ->addOption( 'delete-data-before', 'd', InputOption::VALUE_NONE, 'Delete all tea data in the defined pid before creating new data.' ); } protected function execute(InputInterface $input, OutputInterface $output): int { /** @var int $pageId */ $pageId = $input->getArgument('pageId') ?? 0; /** @var bool $deleteDataBefore */ $deleteDataBefore = $input->getOption('delete-data-before') ?? false; $table = 'tx_tea_domain_model_tea'; $connectionForTable = GeneralUtility::makeInstance(ConnectionPool::class)->getConnectionForTable($table); if ($deleteDataBefore) { $query = $connectionForTable; $query->delete($table, ['pid' => $pageId], [Connection::PARAM_INT]); $output->writeln(sprintf('Existing data in page %s deleted.', $pageId)); } $query = $connectionForTable; foreach ($this->teaData as $item) { $item = ['pid' => $pageId, ...$item]; $query->insert( $table, $item ); } $output->writeln(sprintf('Test data in page %s created.', $pageId)); return Command::SUCCESS; } }