protected function execute(InputInterface $input, OutputInterface $output) { if (is_file($dbFile = __DIR__ . '/../../../../res/test_database.sqlite')) { unlink($dbFile); } $em = TestUtils::createTestEntityManager(); $tool = new SchemaTool($em); $tool->createSchema($em->getMetadataFactory()->getAllMetadata()); $analyzer = Analyzer::create($em, PassConfig::createForTypeScanning()); $packageScanner = new PackageScanner($analyzer); $packageScanner->setLogger(new OutputLogger($output, $input->getOption('verbose'))); $package = new Package('PHP'); $packageVersion = $package->createVersion('5.3'); $packageVersion->setUuid(uniqid(mt_rand(), true)); $packageScanner->scanDirectory($packageVersion, __DIR__ . '/../../../../res/php-5.3-core-api'); $output->writeln('Files scanned.'); $output->write('Persisting results... '); $em->persist($package); $em->flush(); $output->writeln('Done'); }
private function scanFixture($packageVersion, $name) { if (!is_file($zipFile = __DIR__ . '/Fixture/libraries/' . $name . '.zip')) { throw new \InvalidArgumentException(sprintf('Fixture "%s" does not exist.', $name)); } $analyzer = new Analyzer($this->typeRegistry, PassConfig::createForTypeScanning()); $scanner = new PackageScanner($analyzer); $scanner->scanZipFile($packageVersion, $zipFile); }