public function setUp() { $this->entryAPI = new EntryAPI('http://example.com', new ConsumerCredentials('key', 'secret'), new TokenCredentials('tokenkey', 'tokensecret')); $this->mockPlugin = new MockPlugin(); $clientFactory = new DefaultHttpClientFactory(); $clientFactory->addSubscriber($this->mockPlugin); $this->entryAPI->setHttpClientFactory($clientFactory); }
public function execute(InputInterface $input, OutputInterface $output) { parent::execute($input, $output); $searchBaseUrl = $this->resolveBaseUrl('search', $input); $user = $this->session->getUser(); $tokenCredentials = NULL !== $user ? $user->getTokenCredentials() : NULL; $clientFactory = new DefaultHttpClientFactory(); $client = $clientFactory->createClient($searchBaseUrl, $this->session->getConsumerCredentials(), $tokenCredentials); $request = $client->get($input->getArgument('path')); // @todo add query parameters, from JSON and/or yaml file or from simple CLI options //$getRequest->getQuery()->set($key, $value); $queryFile = $input->getOption('query-file'); if (NULL !== $queryFile) { $json = file_get_contents($queryFile); $config = json_decode($json, TRUE); foreach ($config as $key => $value) { $request->getQuery()->add($key, $value); } } try { $response = $request->send(); $output->writeln(''); $output->writeln(''); $output->writeln('Request'); $output->writeln(''); $output->writeln((string) $request); $output->writeln(''); $output->writeln(''); $output->writeln('Response'); $output->writeln(''); $output->writeln((string) $response); $output->writeln(''); $output->writeln(''); } catch (ClientErrorResponseException $e) { $output->writeln((string) $e->getRequest()); $output->writeln((string) $e->getResponse()); } }