/** * Test handling of a bad JSON response. * * @return void * * @expectedException VuFindSearch\Backend\Exception\BackendException * @expectedExceptionMessage JSON decoding error: 4 -- bad { */ public function testBadJson() { $conn = $this->getConnectorMock(['query']); $conn->expects($this->once())->method('query')->will($this->returnValue('bad {')); $back = new Backend($conn); $terms = $back->terms('author', '', -1); }
/** * Retrieve a batch of IDs using the terms component. * * @param Backend $backend Search backend * @param string $lastTerm Last term retrieved * * @return array */ protected function getIdsFromBackendUsingTerms(Backend $backend, $lastTerm) { $key = $backend->getConnector()->getUniqueKey(); $info = $backend->terms($key, $lastTerm, $this->countPerPage)->getFieldTerms($key); return null === $info ? [] : array_keys($info->toArray()); }