protected function execute(InputInterface $input, OutputInterface $output) { $overwrite = $input->getOption('overwrite') ? EntityBuilder::OVERWRITE : NULL; $module = $this->getDoctrineModule(); $builder = new EntityBuilder($input->getArgument('name'), $module); $entity = $input->getOption('with-entity') != 'false'; $builder->setWithRepository($repo = $input->getOption('with-repository') != 'false'); if ($input->getOption('version1')) { $builder->buildDefault(); } else { $builder->buildDefaultV2(); } if ($entity) { if ($table = $input->getArgument('tableName')) { $builder->setTableName($table); } $file = $builder->write(NULL, $overwrite); $output->writeLn('Entity in Datei: "' . $file . '" geschrieben'); } if ($repo) { $repoFile = $builder->writeRepository(NULL, $overwrite); $output->writeLn('EntityRepository in Datei: "' . $repoFile . '" geschrieben'); } return 0; }
public function testEntityCreateAcceptance() { $entityFile = $this->newFile('PersonEntity.php'); $entityFile->delete(); $entityRepositoryFile = $this->newFile('PersonEntityRepository.php'); $entityRepositoryFile->delete(); // test $builder = new EntityBuilder('Person', $this->module); $builder->setWithRepository(TRUE); $builder->buildDefaultV2(); $file = $builder->write($entityFile, EntityBuilder::OVERWRITE); $this->assertSame($file, $builder->getWrittenFile()); $repoFile = $builder->writeRepository($entityRepositoryFile, EntityBuilder::OVERWRITE); $this->assertFileEquals($entityFile, $file); $this->assertFileEquals($entityRepositoryFile, $repoFile); $fixtureEntityFile = $this->getFile('fixture.PersonEntity.php'); $fixtureEntityRepositoryFile = $this->getFile('fixture.PersonEntityRepository.php'); $this->assertFileEquals($fixtureEntityFile, $entityFile); $this->assertFileEquals($fixtureEntityRepositoryFile, $entityRepositoryFile); }