@Override public NetworkResponse performRequest(Request<?> request) throws VolleyError { if (mNumExceptionsToThrow > 0 || mNumExceptionsToThrow == ALWAYS_THROW_EXCEPTIONS) { if (mNumExceptionsToThrow != ALWAYS_THROW_EXCEPTIONS) { mNumExceptionsToThrow--; } throw new ServerError(); } requestHandled = request; return new NetworkResponse(mDataToReturn); }
@Before public void setUp() throws Exception { headers = new HashMap<String, String>(); response = new NetworkResponse(0, null, headers, false); }
@Override public NetworkResponse performRequest(Request<?> request) throws VolleyError { if (mNumExceptionsToThrow > 0 || mNumExceptionsToThrow == ALWAYS_THROW_EXCEPTIONS) { if (mNumExceptionsToThrow != ALWAYS_THROW_EXCEPTIONS) { mNumExceptionsToThrow--; } throw new ServerError(); } requestHandled = request; return new NetworkResponse(mDataToReturn); }
@Before public void setUp() throws Exception { headers = new HashMap<String, String>(); response = new NetworkResponse(0, null, headers, false); }
return new NetworkResponse(HttpStatus.SC_NOT_MODIFIED, null, responseHeaders, true, SystemClock.elapsedRealtime() - requestStart); return new NetworkResponse(HttpStatus.SC_NOT_MODIFIED, entry.data, entry.responseHeaders, true, SystemClock.elapsedRealtime() - requestStart); throw new IOException(); return new NetworkResponse(statusCode, responseContents, responseHeaders, false, SystemClock.elapsedRealtime() - requestStart); } catch (SocketTimeoutException e) { networkResponse = new NetworkResponse(statusCode, responseContents, responseHeaders, false, SystemClock.elapsedRealtime() - requestStart); if (statusCode == HttpStatus.SC_UNAUTHORIZED ||
@Test public void specifiedCharsetJsonObject() throws Exception { byte[] data = jsonObjectString().getBytes(Charset.forName("ISO-8859-1")); Map<String, String> headers = new HashMap<String, String>(); headers.put("Content-Type", "application/json; charset=iso-8859-1"); NetworkResponse network = new NetworkResponse(data, headers); JsonObjectRequest objectRequest = new JsonObjectRequest("", null, null, null); Response<JSONObject> objectResponse = objectRequest.parseNetworkResponse(network); assertNotNull(objectResponse); assertTrue(objectResponse.isSuccess()); //don't check the text in Czech, ISO-8859-1 doesn't support some Czech characters assertEquals(COPY_VALUE, objectResponse.result.getString(COPY_NAME)); }
@Test public void specifiedCharsetJsonArray() throws Exception { byte[] data = jsonArrayString().getBytes(Charset.forName("ISO-8859-2")); Map<String, String> headers = new HashMap<String, String>(); headers.put("Content-Type", "application/json; charset=iso-8859-2"); NetworkResponse network = new NetworkResponse(data, headers); JsonArrayRequest arrayRequest = new JsonArrayRequest("", null, null); Response<JSONArray> arrayResponse = arrayRequest.parseNetworkResponse(network); assertNotNull(arrayResponse); assertTrue(arrayResponse.isSuccess()); assertEquals(TEXT_VALUE, arrayResponse.result.getString(TEXT_INDEX)); // don't check the copyright symbol, ISO-8859-2 doesn't have it, but it has Czech characters }
@Test public void specifiedCharsetJsonObject() throws Exception { byte[] data = jsonObjectString().getBytes(Charset.forName("ISO-8859-1")); Map<String, String> headers = new HashMap<String, String>(); headers.put("Content-Type", "application/json; charset=iso-8859-1"); NetworkResponse network = new NetworkResponse(data, headers); JsonObjectRequest objectRequest = new JsonObjectRequest("", null, null, null); Response<JSONObject> objectResponse = objectRequest.parseNetworkResponse(network); assertNotNull(objectResponse); assertTrue(objectResponse.isSuccess()); //don't check the text in Czech, ISO-8859-1 doesn't support some Czech characters assertEquals(COPY_VALUE, objectResponse.result.getString(COPY_NAME)); }
@Test public void specifiedCharsetJsonArray() throws Exception { byte[] data = jsonArrayString().getBytes(Charset.forName("ISO-8859-2")); Map<String, String> headers = new HashMap<String, String>(); headers.put("Content-Type", "application/json; charset=iso-8859-2"); NetworkResponse network = new NetworkResponse(data, headers); JsonArrayRequest arrayRequest = new JsonArrayRequest("", null, null); Response<JSONArray> arrayResponse = arrayRequest.parseNetworkResponse(network); assertNotNull(arrayResponse); assertTrue(arrayResponse.isSuccess()); assertEquals(TEXT_VALUE, arrayResponse.result.getString(TEXT_INDEX)); // don't check the copyright symbol, ISO-8859-2 doesn't have it, but it has Czech characters }
@Test public void defaultCharsetJsonArray() throws Exception { // UTF-8 is default charset for JSON byte[] data = jsonArrayString().getBytes(Charset.forName("UTF-8")); NetworkResponse network = new NetworkResponse(data); JsonArrayRequest arrayRequest = new JsonArrayRequest("", null, null); Response<JSONArray> arrayResponse = arrayRequest.parseNetworkResponse(network); assertNotNull(arrayResponse); assertTrue(arrayResponse.isSuccess()); assertEquals(TEXT_VALUE, arrayResponse.result.getString(TEXT_INDEX)); assertEquals(COPY_VALUE, arrayResponse.result.getString(COPY_INDEX)); }
@Test public void defaultCharsetJsonObject() throws Exception { // UTF-8 is default charset for JSON byte[] data = jsonObjectString().getBytes(Charset.forName("UTF-8")); NetworkResponse network = new NetworkResponse(data); JsonObjectRequest objectRequest = new JsonObjectRequest("", null, null, null); Response<JSONObject> objectResponse = objectRequest.parseNetworkResponse(network); assertNotNull(objectResponse); assertTrue(objectResponse.isSuccess()); assertEquals(TEXT_VALUE, objectResponse.result.getString(TEXT_NAME)); assertEquals(COPY_VALUE, objectResponse.result.getString(COPY_NAME)); }
@Test public void defaultCharsetJsonObject() throws Exception { // UTF-8 is default charset for JSON byte[] data = jsonObjectString().getBytes(Charset.forName("UTF-8")); NetworkResponse network = new NetworkResponse(data); JsonObjectRequest objectRequest = new JsonObjectRequest("", null, null, null); Response<JSONObject> objectResponse = objectRequest.parseNetworkResponse(network); assertNotNull(objectResponse); assertTrue(objectResponse.isSuccess()); assertEquals(TEXT_VALUE, objectResponse.result.getString(TEXT_NAME)); assertEquals(COPY_VALUE, objectResponse.result.getString(COPY_NAME)); }
@Test public void defaultCharsetJsonArray() throws Exception { // UTF-8 is default charset for JSON byte[] data = jsonArrayString().getBytes(Charset.forName("UTF-8")); NetworkResponse network = new NetworkResponse(data); JsonArrayRequest arrayRequest = new JsonArrayRequest("", null, null); Response<JSONArray> arrayResponse = arrayRequest.parseNetworkResponse(network); assertNotNull(arrayResponse); assertTrue(arrayResponse.isSuccess()); assertEquals(TEXT_VALUE, arrayResponse.result.getString(TEXT_INDEX)); assertEquals(COPY_VALUE, arrayResponse.result.getString(COPY_INDEX)); }
@Test public void parseCaseInsensitive() { long now = System.currentTimeMillis(); Header[] headersArray = new Header[5]; headersArray[0] = new BasicHeader("eTAG", "Yow!"); headersArray[1] = new BasicHeader("DATE", rfc1123Date(now)); headersArray[2] = new BasicHeader("expires", rfc1123Date(now + ONE_HOUR_MILLIS)); headersArray[3] = new BasicHeader("cache-control", "public, max-age=86400"); headersArray[4] = new BasicHeader("content-type", "text/plain"); Map<String, String> headers = BasicNetwork.convertHeaders(headersArray); NetworkResponse response = new NetworkResponse(0, null, headers, false); Cache.Entry entry = HttpHeaderParser.parseCacheHeaders(response); assertNotNull(entry); assertEquals("Yow!", entry.etag); assertEqualsWithin(now + ONE_DAY_MILLIS, entry.ttl, ONE_MINUTE_MILLIS); assertEquals(entry.softTtl, entry.ttl); assertEquals("ISO-8859-1", HttpHeaderParser.parseCharset(headers)); } }
@Test public void parseCaseInsensitive() { long now = System.currentTimeMillis(); Header[] headersArray = new Header[5]; headersArray[0] = new BasicHeader("eTAG", "Yow!"); headersArray[1] = new BasicHeader("DATE", rfc1123Date(now)); headersArray[2] = new BasicHeader("expires", rfc1123Date(now + ONE_HOUR_MILLIS)); headersArray[3] = new BasicHeader("cache-control", "public, max-age=86400"); headersArray[4] = new BasicHeader("content-type", "text/plain"); Map<String, String> headers = BasicNetwork.convertHeaders(headersArray); NetworkResponse response = new NetworkResponse(0, null, headers, false); Cache.Entry entry = HttpHeaderParser.parseCacheHeaders(response); assertNotNull(entry); assertEquals("Yow!", entry.etag); assertEqualsWithin(now + ONE_DAY_MILLIS, entry.ttl, ONE_MINUTE_MILLIS); assertEquals(entry.softTtl, entry.ttl); assertEquals("ISO-8859-1", HttpHeaderParser.parseCharset(headers)); } }
new NetworkResponse(entry.data, entry.responseHeaders)); request.addMarker("cache-hit-parsed");
new NetworkResponse(entry.data, entry.responseHeaders)); request.addMarker("cache-hit-parsed");
new NetworkResponse(entry.data, entry.responseHeaders)); request.addMarker("cache-hit-parsed");
NetworkResponse jpeg = new NetworkResponse(jpegBytes);
NetworkResponse jpeg = new NetworkResponse(jpegBytes);