private function expectFilenameTranslation($filename, $blob_key) { $req = new \google\appengine\CreateEncodedGoogleStorageKeyRequest(); $req->setFilename($filename); $resp = new \google\appengine\CreateEncodedGoogleStorageKeyResponse(); $resp->setBlobKey($blob_key); $this->apiProxyMock->expectCall('blobstore', 'CreateEncodedGoogleStorageKey', $req, $resp); }
public function testServeRangeHeaderSuccess() { $req = new \google\appengine\CreateEncodedGoogleStorageKeyRequest(); $req->setFilename("/gs/some_bucket/some_object"); $resp = new \google\appengine\CreateEncodedGoogleStorageKeyResponse(); $resp->setBlobKey("some_blob_key"); $this->apiProxyMock->expectCall("blobstore", "CreateEncodedGoogleStorageKey", $req, $resp); $filename = "gcs://some_bucket/some_object"; $expected_headers = ["X-AppEngine-BlobKey" => "some_blob_key", "X-AppEngine-BlobRange" => "bytes=100-200", "Content-Disposition" => "attachment; filename=foo.jpg", "Content-Type" => "image/jpeg"]; $options = ["save_as" => "foo.jpg", "use_range" => true, "content_type" => "image/jpeg"]; $_SERVER["HTTP_RANGE"] = "bytes=100-200"; BlobstoreService::serve($filename, $options); $this->assertEquals(ksort($this->sent_headers), ksort($expected_headers)); $this->apiProxyMock->verify(); }