checkToken(); $client = $this->getClient(); $batch = new Google_Http_Batch($client); $plus = new Google_Service_Plus($client); $client->setUseBatch(true); $batch->add($plus->people->get('me'), 'key1'); $batch->add($plus->people->get('me'), 'key2'); $batch->add($plus->people->get('me'), 'key3'); $result = $batch->execute(); $this->assertTrue(isset($result['response-key1'])); $this->assertTrue(isset($result['response-key2'])); $this->assertTrue(isset($result['response-key3'])); } public function testBatchRequest() { $client = $this->getClient(); $batch = new Google_Http_Batch($client); $plus = new Google_Service_Plus($client); $client->setUseBatch(true); $batch->add($plus->people->get('+LarryPage'), 'key1'); $batch->add($plus->people->get('+LarryPage'), 'key2'); $batch->add($plus->people->get('+LarryPage'), 'key3'); $result = $batch->execute(); $this->assertTrue(isset($result['response-key1'])); $this->assertTrue(isset($result['response-key2'])); $this->assertTrue(isset($result['response-key3'])); } public function testBatchRequestWithPostBody() { $this->checkToken(); $client = $this->getClient(); $batch = new Google_Http_Batch($client); $shortener = new Google_Service_Urlshortener($client); $url1 = new Google_Service_Urlshortener_Url; $url2 = new Google_Service_Urlshortener_Url; $url3 = new Google_Service_Urlshortener_Url; $url1->setLongUrl('http://brentertainment.com'); $url2->setLongUrl('http://morehazards.com'); $url3->setLongUrl('http://github.com/bshaffer'); $client->setUseBatch(true); $batch->add($shortener->url->insert($url1), 'key1'); $batch->add($shortener->url->insert($url2), 'key2'); $batch->add($shortener->url->insert($url3), 'key3'); $result = $batch->execute(); $this->assertTrue(isset($result['response-key1'])); $this->assertTrue(isset($result['response-key2'])); $this->assertTrue(isset($result['response-key3'])); } public function testInvalidBatchRequest() { $client = $this->getClient(); $batch = new Google_Http_Batch($client); $plus = new Google_Service_Plus($client); $client->setUseBatch(true); $batch->add($plus->people->get('123456789987654321'), 'key1'); $batch->add($plus->people->get('+LarryPage'), 'key2'); $result = $batch->execute(); $this->assertTrue(isset($result['response-key2'])); $this->assertInstanceOf( 'Google_Service_Exception', $result['response-key1'] ); } public function testMediaFileBatch() { $client = $this->getClient(); $storage = new Google_Service_Storage($client); $bucket = 'testbucket'; $stream = Psr7\stream_for("testbucket-text"); $params = [ 'data' => $stream, 'mimeType' => 'text/plain', ]; // Metadata object for new Google Cloud Storage object $obj = new Google_Service_Storage_StorageObject(); $obj->contentType = "text/plain"; // Batch Upload $client->setUseBatch(true); $obj->name = "batch"; /** @var \GuzzleHttp\Psr7\Request $request */ $request = $storage->objects->insert($bucket, $obj, $params); $this->assertContains('multipart/related', $request->getHeaderLine('content-type')); $this->assertContains('/upload/', $request->getUri()->getPath()); $this->assertContains('uploadType=multipart', $request->getUri()->getQuery()); } }