diff options
Diffstat (limited to 'core/src/test/java/com/android/volley/NetworkResponseTest.java')
-rw-r--r-- | core/src/test/java/com/android/volley/NetworkResponseTest.java | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/core/src/test/java/com/android/volley/NetworkResponseTest.java b/core/src/test/java/com/android/volley/NetworkResponseTest.java new file mode 100644 index 0000000..70210da --- /dev/null +++ b/core/src/test/java/com/android/volley/NetworkResponseTest.java @@ -0,0 +1,61 @@ +package com.android.volley; + +import static org.hamcrest.Matchers.containsInAnyOrder; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertThat; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.TreeMap; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.robolectric.RobolectricTestRunner; + +@RunWith(RobolectricTestRunner.class) +public class NetworkResponseTest { + + @SuppressWarnings("deprecation") + @Test + public void mapToList() { + Map<String, String> headers = new HashMap<>(); + headers.put("key1", "value1"); + headers.put("key2", "value2"); + + NetworkResponse resp = new NetworkResponse(200, null, headers, false); + + List<Header> expectedHeaders = new ArrayList<>(); + expectedHeaders.add(new Header("key1", "value1")); + expectedHeaders.add(new Header("key2", "value2")); + + assertThat(expectedHeaders, containsInAnyOrder(resp.allHeaders.toArray(new Header[0]))); + } + + @Test + public void listToMap() { + List<Header> headers = new ArrayList<>(); + headers.add(new Header("key1", "value1")); + // Later values should be preferred. + headers.add(new Header("key2", "ignoredvalue")); + headers.add(new Header("key2", "value2")); + + NetworkResponse resp = new NetworkResponse(200, null, false, 0L, headers); + + Map<String, String> expectedHeaders = new TreeMap<>(String.CASE_INSENSITIVE_ORDER); + expectedHeaders.put("key1", "value1"); + expectedHeaders.put("key2", "value2"); + + assertEquals(expectedHeaders, resp.headers); + } + + @SuppressWarnings("deprecation") + @Test + public void nullValuesDontCrash() { + new NetworkResponse(null); + new NetworkResponse(null, null); + new NetworkResponse(200, null, null, false); + new NetworkResponse(200, null, null, false, 0L); + new NetworkResponse(200, null, false, 0L, null); + } +} |