Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(425)

Unified Diff: google-api-client/src/test/java/com/google/api/client/googleapis/media/MediaHttpUploaderTest.java

Issue 7133074: Support GZipped media content for resumable uploads where content length is known Base URL: https://google-api-java-client.googlecode.com/hg/
Patch Set: Javadoc Created 12 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: google-api-client/src/test/java/com/google/api/client/googleapis/media/MediaHttpUploaderTest.java
===================================================================
--- a/google-api-client/src/test/java/com/google/api/client/googleapis/media/MediaHttpUploaderTest.java
+++ b/google-api-client/src/test/java/com/google/api/client/googleapis/media/MediaHttpUploaderTest.java
@@ -72,6 +72,7 @@
boolean directUploadWithMetadata;
boolean contentLengthNotSpecified;
boolean assertTestHeaders;
+ boolean gzipEncoded;
protected MediaTransport(int contentLength, boolean testServerError, boolean testClientError,
boolean directUploadEnabled) {
@@ -155,11 +156,16 @@
}
String bytesRange;
- if (bytesUploaded + MediaHttpUploader.DEFAULT_CHUNK_SIZE > contentLength) {
+ if (!gzipEncoded &&
+ bytesUploaded + MediaHttpUploader.DEFAULT_CHUNK_SIZE > contentLength) {
bytesRange = bytesUploaded + "-" + bytesUploaded;
} else {
- bytesRange =
- bytesUploaded + "-" + (bytesUploaded + MediaHttpUploader.DEFAULT_CHUNK_SIZE - 1);
+ bytesRange = bytesUploaded + "-";
+ if (gzipEncoded) {
+ bytesRange += contentLength - 1;
+ } else {
+ bytesRange += (bytesUploaded + MediaHttpUploader.DEFAULT_CHUNK_SIZE - 1);
+ }
}
String expectedContentRange;
if (contentLengthNotSpecified && ((
@@ -173,7 +179,7 @@
assertEquals(expectedContentRange, getFirstHeaderValue("Content-Range"));
bytesUploaded += MediaHttpUploader.DEFAULT_CHUNK_SIZE;
- if (bytesUploaded >= contentLength) {
+ if (gzipEncoded || bytesUploaded >= contentLength) {
// Return 200 since the upload is complete.
response.setStatusCode(200);
} else {
@@ -312,9 +318,10 @@
}
}
- public void testUploadOneCall() throws Exception {
+ public void testUploadOneCall_WithContentLengthSpecified_WithGZipEnabled() throws Exception {
int contentLength = MediaHttpUploader.DEFAULT_CHUNK_SIZE;
- MediaTransport fakeTransport = new MediaTransport(contentLength, false, false, false);
+ MediaTransport fakeTransport = new MediaTransport(10221, false, false, false);
+ fakeTransport.gzipEncoded = true;
InputStream is = new ByteArrayInputStream(new byte[contentLength]);
InputStreamContent mediaContent = new InputStreamContent(TEST_CONTENT_TYPE, is);
mediaContent.setLength(contentLength);
@@ -392,6 +399,7 @@
InputStreamContent mediaContent = new InputStreamContent(TEST_CONTENT_TYPE, is);
mediaContent.setLength(contentLength);
MediaHttpUploader uploader = new MediaHttpUploader(mediaContent, fakeTransport, null);
+ uploader.setDisableGZipContent(true);
uploader.upload(new GenericUrl(TEST_RESUMABLE_REQUEST_URL));
// There should be 6 calls made. 1 initiation request and 5 upload requests.
@@ -406,6 +414,7 @@
InputStreamContent mediaContent = new InputStreamContent(TEST_CONTENT_TYPE, is);
mediaContent.setLength(contentLength);
MediaHttpUploader uploader = new MediaHttpUploader(mediaContent, fakeTransport, null);
+ uploader.setDisableGZipContent(true);
uploader.getInitiationHeaders().set("test-header-name", "test-header-value");
uploader.upload(new GenericUrl(TEST_RESUMABLE_REQUEST_URL));
@@ -446,6 +455,7 @@
InputStreamContent mediaContent = new InputStreamContent(TEST_CONTENT_TYPE, is);
mediaContent.setLength(contentLength);
MediaHttpUploader uploader = new MediaHttpUploader(mediaContent, fakeTransport, null);
+ uploader.setDisableGZipContent(true);
uploader.setProgressListener(new ResumableProgressListenerWithTwoUploadCalls());
uploader.upload(new GenericUrl(TEST_RESUMABLE_REQUEST_URL));
}
@@ -471,6 +481,7 @@
InputStreamContent mediaContent = new InputStreamContent(TEST_CONTENT_TYPE, is);
mediaContent.setLength(contentLength);
MediaHttpUploader uploader = new MediaHttpUploader(mediaContent, fakeTransport, null);
+ uploader.setDisableGZipContent(true);
uploader.upload(new GenericUrl(TEST_RESUMABLE_REQUEST_URL));
// There should be 5 calls made. 1 initiation request, 1 upload request with server error, 1
@@ -500,6 +511,7 @@
InputStreamContent mediaContent = new InputStreamContent(TEST_CONTENT_TYPE, is);
mediaContent.setLength(contentLength);
MediaHttpUploader uploader = new MediaHttpUploader(mediaContent, fakeTransport, null);
+ uploader.setDisableGZipContent(true);
uploader.setBackOffPolicyEnabled(false);
HttpResponse response = uploader.upload(new GenericUrl(TEST_RESUMABLE_REQUEST_URL));
@@ -536,6 +548,7 @@
InputStreamContent mediaContent = new InputStreamContent(TEST_CONTENT_TYPE, is);
mediaContent.setLength(contentLength);
MediaHttpUploader uploader = new MediaHttpUploader(mediaContent, fakeTransport, null);
+ uploader.setDisableGZipContent(true);
HttpResponse response = uploader.upload(new GenericUrl(TEST_RESUMABLE_REQUEST_URL));
assertEquals(404, response.getStatusCode());
@@ -551,6 +564,7 @@
InputStreamContent mediaContent = new InputStreamContent(TEST_CONTENT_TYPE, is);
mediaContent.setLength(contentLength);
MediaHttpUploader uploader = new MediaHttpUploader(mediaContent, fakeTransport, null);
+ uploader.setDisableGZipContent(true);
HttpResponse response = uploader.upload(new GenericUrl(TEST_RESUMABLE_REQUEST_URL));
assertEquals(411, response.getStatusCode());

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b