public function run(ChefContext $context) { $result = $context->getResult(); // Validate arguments. $format = $result->command->args['format']; $source = $result->command->args['source']; if (!$format or !$source) { // Warning for the old syntax. throw new PieCrustException("The syntax for this command has changed: specify the format and the source as arguments. See `chef import -h` for help."); } // Start importing! $importer = new PieCrustImporter($context->getApp(), $context->getLog()); $importer->import($format, $source, $result->command->options); }
public function testImportWordpress() { $fs = MockFileSystem::create()->withPagesDir()->withPostsDir(); $app = new PieCrust(array('root' => $fs->getAppRoot())); $importer = new PieCrustImporter($app); $sampleXml = PIECRUST_UNITTESTS_TEST_DATA_DIR . 'import/wordpress.test-data.2011-01-17.xml'; $importer->import('wordpress', $sampleXml, array()); // Re-create the app to load from the new values. $app = new PieCrust(array('root' => $fs->getAppRoot())); // Check the content. $pcFs = FileSystem::create($app); $pageFiles = $pcFs->getPageFiles(); $this->assertCount(11, $pageFiles); $postFiles = $pcFs->getPostFiles(); $this->assertCount(22, $postFiles); }