public function testBatchRequest() { // small requests size $results = $this->core->batchRequest(array($this->core->createRequest(array(), '/me', 'get'), $this->core->createRequest(array('limit' => 5), '/me/friends', 'get'))); $this->assertObjectHasAttribute('id', $results[0]); $this->assertCount(5, $results[1]->data); // big requests size $requests = array(); for ($i = 0; $i < 200; $i++) { $requests[] = $this->core->createRequest(array(), '/me', 'get'); } $results = $this->core->batchRequest($requests); $this->assertCount(200, $results); foreach ($results as $result) { $this->assertObjectHasAttribute('id', $result); } }
/** * @param string[] $creative_ids * * @return array */ public function getCreatives($creative_ids) { if (is_array($creative_ids)) { $creative_ids = array_unique($creative_ids); } $all_creative_ids = $creative_ids; $request_creative_ids = $this->pools['creative']->getNotHasIds($creative_ids); if (count($request_creative_ids) > 0) { $fields = Fields::getCreativeFields(); $requests = []; foreach ($request_creative_ids as $creative_id) { $requests[] = $this->core->createRequest(array('fields' => $fields), '/' . $creative_id, 'get'); } $creatives = $this->core->batchRequest($requests); CreativeFactory::createCreative($creatives); $this->pools['creative']->addAll($creatives); } return $this->pools['creative']->getAllExistents($all_creative_ids); }