Chromium Code Reviews| Index: android_webview/javatests/src/org/chromium/android_webview/test/TestWebServer.java |
| diff --git a/android_webview/javatests/src/org/chromium/android_webview/test/TestWebServer.java b/android_webview/javatests/src/org/chromium/android_webview/test/TestWebServer.java |
| index 8508a51f1a83c3667e4b4312ea29d91e52105c7d..676cd5e6357dedabc0736d2ccb2707fa173755a8 100644 |
| --- a/android_webview/javatests/src/org/chromium/android_webview/test/TestWebServer.java |
| +++ b/android_webview/javatests/src/org/chromium/android_webview/test/TestWebServer.java |
| @@ -15,7 +15,7 @@ import org.apache.http.HttpStatus; |
| import org.apache.http.HttpVersion; |
| import org.apache.http.RequestLine; |
| import org.apache.http.StatusLine; |
| -import org.apache.http.entity.StringEntity; |
| +import org.apache.http.entity.ByteArrayEntity; |
| import org.apache.http.impl.DefaultHttpServerConnection; |
| import org.apache.http.impl.cookie.DateUtils; |
| import org.apache.http.message.BasicHttpResponse; |
| @@ -26,7 +26,6 @@ import org.apache.http.params.HttpParams; |
| import java.io.ByteArrayInputStream; |
| import java.io.IOException; |
| import java.io.InputStream; |
| -import java.io.UnsupportedEncodingException; |
| import java.net.MalformedURLException; |
| import java.net.ServerSocket; |
| import java.net.Socket; |
| @@ -72,11 +71,11 @@ public class TestWebServer { |
| private boolean mSsl; |
| private static class Response { |
| - final String mResponseStr; |
| + final byte[] mResponseData; |
| final List<Pair<String, String>> mResponseHeaders; |
| - Response(String responseStr, List<Pair<String, String>> responseHeaders) { |
| - mResponseStr = responseStr; |
| + Response(byte[] resposneData, List<Pair<String, String>> responseHeaders) { |
| + mResponseData = resposneData; |
| mResponseHeaders = responseHeaders == null ? |
| new ArrayList<Pair<String, String>>() : responseHeaders; |
| } |
| @@ -146,16 +145,25 @@ public class TestWebServer { |
| * in (with the option to specify additional headers). |
| * |
| * @param requestPath The path to respond to. |
| - * @param resposneString The response body that will be returned. |
| + * @param responseString The response body that will be returned. |
| * @param responseHeaders Any additional headers that should be returned along with the |
| * response (null is acceptable). |
| * @return The full URL including the path that should be requested to get the expected |
| * response. |
| */ |
| public String setResponse( |
| - String requestPath, String resposneString, |
| + String requestPath, String responseString, |
| List<Pair<String, String>> responseHeaders) { |
| - mResponseMap.put(requestPath, new Response(resposneString, responseHeaders)); |
| + mResponseMap.put(requestPath, new Response(responseString.getBytes(), responseHeaders)); |
| + return mServerUri + requestPath; |
| + } |
| + |
| + public String setResponseBase64( |
|
joth
2012/09/25 20:28:21
java doc?
boliu
2012/09/25 20:52:28
Done.
|
| + String requestPath, String base64EncodedResponse, |
| + List<Pair<String, String>> responseHeaders) { |
| + mResponseMap.put(requestPath, |
| + new Response(Base64.decode(base64EncodedResponse, Base64.DEFAULT), |
| + responseHeaders)); |
| return mServerUri + requestPath; |
| } |
| @@ -234,7 +242,7 @@ public class TestWebServer { |
| httpResponse = createResponse(HttpStatus.SC_NOT_FOUND); |
| } else { |
| httpResponse = createResponse(HttpStatus.SC_OK); |
| - httpResponse.setEntity(createEntity(response.mResponseStr)); |
| + httpResponse.setEntity(createEntity(response.mResponseData)); |
| for (Pair<String, String> header : response.mResponseHeaders) { |
| httpResponse.addHeader(header.first, header.second); |
| } |
| @@ -272,7 +280,7 @@ public class TestWebServer { |
| buf.append("</title></head><body>"); |
| buf.append(reason); |
| buf.append("</body></html>"); |
| - response.setEntity(createEntity(buf.toString())); |
| + response.setEntity(createEntity(buf.toString().getBytes())); |
| } |
| return response; |
| } |
| @@ -280,15 +288,10 @@ public class TestWebServer { |
| /** |
| * Create a string entity for the given content. |
| */ |
| - private StringEntity createEntity(String content) { |
| - try { |
| - StringEntity entity = new StringEntity(content); |
| - entity.setContentType("text/html"); |
| - return entity; |
| - } catch (UnsupportedEncodingException e) { |
| - Log.w(TAG, e); |
| - } |
| - return null; |
| + private ByteArrayEntity createEntity(byte[] data) { |
| + ByteArrayEntity entity = new ByteArrayEntity(data); |
| + entity.setContentType("text/html"); |
| + return entity; |
| } |
| private static class ServerThread extends Thread { |