A specific test for http://b/3181430.

Bug: 3181430
Change-Id: If1e02a888863143f4c56d1ef57e265d7c7bffcc4
diff --git a/luni/src/test/java/libcore/java/util/zip/ZipOutputStreamTest.java b/luni/src/test/java/libcore/java/util/zip/ZipOutputStreamTest.java
index 098aa4b..e7c518f 100644
--- a/luni/src/test/java/libcore/java/util/zip/ZipOutputStreamTest.java
+++ b/luni/src/test/java/libcore/java/util/zip/ZipOutputStreamTest.java
@@ -35,6 +35,13 @@
         assertEquals(Arrays.toString(data), Arrays.toString(ZipInputStreamTest.unzip("short", zipped)));
     }
 
+    // http://b/3181430 --- a sign-extension bug on CRCs with the top bit set.
+    public void test3181430() throws IOException {
+        byte[] data = new byte[1]; // CRC32({ 0 }) == 0xd202ef8d
+        byte[] zipped = zip("z", data);
+        assertEquals(Arrays.toString(data), Arrays.toString(ZipInputStreamTest.unzip("z", zipped)));
+    }
+
     public void testLongMessage() throws IOException {
         byte[] data = new byte[1024 * 1024];
         new Random().nextBytes(data);