You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ah...@apache.org on 2019/11/21 16:10:35 UTC

[commons-codec] 01/02: MurmurHash3: Modify tests to call the method described in the javadoc.

This is an automated email from the ASF dual-hosted git repository.

aherbert pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-codec.git

commit ae6c7c436066e70c0f61f7f004ee2823f1c04d4e
Author: aherbert <ah...@apache.org>
AuthorDate: Thu Nov 21 16:10:14 2019 +0000

    MurmurHash3: Modify tests to call the method described in the javadoc.
---
 .../commons/codec/digest/MurmurHash3Test.java      | 42 ++++++++++++++++------
 1 file changed, 31 insertions(+), 11 deletions(-)

diff --git a/src/test/java/org/apache/commons/codec/digest/MurmurHash3Test.java b/src/test/java/org/apache/commons/codec/digest/MurmurHash3Test.java
index 0443fe2..3e864f2 100644
--- a/src/test/java/org/apache/commons/codec/digest/MurmurHash3Test.java
+++ b/src/test/java/org/apache/commons/codec/digest/MurmurHash3Test.java
@@ -93,15 +93,19 @@ public class MurmurHash3Test {
      */
     @Test
     public void testHash32LongLong() {
+        // As described in the javadoc
+        final int offset = 0;
+        final int seed = 104729;
+
         final int length = MurmurHash3.LONG_BYTES * 2;
         final ByteBuffer buffer = ByteBuffer.allocate(length);
+        final byte[] bytes = buffer.array();
         final long[] data = createLongTestData();
-        final int seed = MurmurHash3.DEFAULT_SEED;
         for (final long i : data) {
             for (final long j : data) {
                 buffer.putLong(0, i);
                 buffer.putLong(MurmurHash3.LONG_BYTES, j);
-                Assert.assertEquals(MurmurHash3.hash32(buffer.array(), length, seed), MurmurHash3.hash32(i, j));
+                Assert.assertEquals(MurmurHash3.hash32(bytes, offset, length, seed), MurmurHash3.hash32(i, j));
             }
         }
     }
@@ -111,15 +115,19 @@ public class MurmurHash3Test {
      */
     @Test
     public void testHash32LongLongSeed() {
+        // As described in the javadoc
+        final int offset = 0;
+        final int seed = 104729;
+
         final int length = MurmurHash3.LONG_BYTES * 2;
         final ByteBuffer buffer = ByteBuffer.allocate(length);
+        final byte[] bytes = buffer.array();
         final long[] data = createLongTestData();
-        final int seed = ThreadLocalRandom.current().nextInt();
         for (final long i : data) {
             for (final long j : data) {
                 buffer.putLong(0, i);
                 buffer.putLong(MurmurHash3.LONG_BYTES, j);
-                Assert.assertEquals(MurmurHash3.hash32(buffer.array(), length, seed), MurmurHash3.hash32(i, j, seed));
+                Assert.assertEquals(MurmurHash3.hash32(bytes, offset, length, seed), MurmurHash3.hash32(i, j, seed));
             }
         }
     }
@@ -129,13 +137,17 @@ public class MurmurHash3Test {
      */
     @Test
     public void testHash32Long() {
+        // As described in the javadoc
+        final int offset = 0;
+        final int seed = 104729;
+
         final int length = MurmurHash3.LONG_BYTES;
         final ByteBuffer buffer = ByteBuffer.allocate(length);
+        final byte[] bytes = buffer.array();
         final long[] data = createLongTestData();
-        final int seed = MurmurHash3.DEFAULT_SEED;
         for (final long i : data) {
             buffer.putLong(0, i);
-            Assert.assertEquals(MurmurHash3.hash32(buffer.array(), length, seed), MurmurHash3.hash32(i));
+            Assert.assertEquals(MurmurHash3.hash32(bytes, offset, length, seed), MurmurHash3.hash32(i));
         }
     }
 
@@ -144,13 +156,17 @@ public class MurmurHash3Test {
      */
     @Test
     public void testHash32LongSeed() {
+        // As described in the javadoc
+        final int offset = 0;
+        final int seed = 104729;
+
         final int length = MurmurHash3.LONG_BYTES;
         final ByteBuffer buffer = ByteBuffer.allocate(length);
+        final byte[] bytes = buffer.array();
         final long[] data = createLongTestData();
-        final int seed = ThreadLocalRandom.current().nextInt();
         for (final long i : data) {
             buffer.putLong(0, i);
-            Assert.assertEquals(MurmurHash3.hash32(buffer.array(), length, seed), MurmurHash3.hash32(i, seed));
+            Assert.assertEquals(MurmurHash3.hash32(bytes, offset, length, seed), MurmurHash3.hash32(i, seed));
         }
     }
 
@@ -465,6 +481,10 @@ public class MurmurHash3Test {
      */
     @Test
     public void testHash64WithPrimitives() {
+        // As described in the javadoc
+        final int offset = 0;
+        final int seed = 104729;
+
         final int iters = 1000;
         final ByteBuffer shortBuffer = ByteBuffer.allocate(MurmurHash3.SHORT_BYTES);
         final ByteBuffer intBuffer = ByteBuffer.allocate(MurmurHash3.INTEGER_BYTES);
@@ -478,11 +498,11 @@ public class MurmurHash3Test {
             final int in = (int) (ln >>> 3);
             final short sn = (short) (ln >>> 5);
             shortBuffer.putShort(0, sn);
-            Assert.assertEquals(MurmurHash3.hash64(shortBytes), MurmurHash3.hash64(sn));
+            Assert.assertEquals(MurmurHash3.hash64(shortBytes, offset, shortBytes.length, seed), MurmurHash3.hash64(sn));
             intBuffer.putInt(0, in);
-            Assert.assertEquals(MurmurHash3.hash64(intBytes), MurmurHash3.hash64(in));
+            Assert.assertEquals(MurmurHash3.hash64(intBytes, offset, intBytes.length, seed), MurmurHash3.hash64(in));
             longBuffer.putLong(0, ln);
-            Assert.assertEquals(MurmurHash3.hash64(longBytes), MurmurHash3.hash64(ln));
+            Assert.assertEquals(MurmurHash3.hash64(longBytes, offset, longBytes.length, seed), MurmurHash3.hash64(ln));
         }
     }