public void testCrc32cLookupTable() { // See Hacker's Delight 2nd Edition, Figure 14-7. int[] expected = new int[256]; for (int i = 0; i < expected.length; i++) { int crc = i; for (int j = 7; j >= 0; j--) { int mask = -(crc & 1); crc = ((crc >>> 1) ^ (CRC32C_GENERATOR_FLIPPED & mask)); } expected[i] = crc; } int[] actual = Crc32cHashFunction.Crc32cHasher.CRC_TABLE; assertTrue( "Expected: \n" + Arrays.toString(expected) + "\nActual:\n" + Arrays.toString(actual), Arrays.equals(expected, actual)); } }
public void testCrc32cLookupTable() { // See Hacker's Delight 2nd Edition, Figure 14-7. int[] expected = new int[256]; for (int i = 0; i < expected.length; i++) { int crc = i; for (int j = 7; j >= 0; j--) { int mask = -(crc & 1); crc = ((crc >>> 1) ^ (CRC32C_GENERATOR_FLIPPED & mask)); } expected[i] = crc; } int[] actual = Crc32cHashFunction.Crc32cHasher.CRC_TABLE; assertTrue( "Expected: \n" + Arrays.toString(expected) + "\nActual:\n" + Arrays.toString(actual), Arrays.equals(expected, actual)); } }