1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.commons.compress.compressors.lz4;
20
21 import static org.junit.jupiter.api.Assertions.assertEquals;
22
23 import java.io.File;
24 import java.io.IOException;
25 import java.io.InputStream;
26 import java.nio.file.Files;
27 import java.util.stream.Stream;
28
29 import org.apache.commons.compress.AbstractTest;
30 import org.apache.commons.io.IOUtils;
31 import org.junit.jupiter.params.ParameterizedTest;
32 import org.junit.jupiter.params.provider.Arguments;
33 import org.junit.jupiter.params.provider.MethodSource;
34
35 public class XXHash32Test {
36
37 public static Stream<Arguments> factory() {
38 return Stream.of(
39
40 Arguments.of("bla.tar", "fbb5c8d1"), Arguments.of("bla.tar.xz", "4106a208"), Arguments.of("8.posix.tar.gz", "9fce116a"));
41 }
42
43 @ParameterizedTest
44 @MethodSource("factory")
45 public void verifyChecksum(final String fileName, final String expectedChecksum) throws IOException {
46 final XXHash32 h = new XXHash32();
47 final File file = AbstractTest.getFile(fileName);
48 try (InputStream s = Files.newInputStream(file.toPath())) {
49 final byte[] b = IOUtils.toByteArray(s);
50 h.update(b, 0, b.length);
51 }
52 assertEquals(expectedChecksum, Long.toHexString(h.getValue()), "checksum for " + file.getName());
53 }
54 }