1
2
3
4
5
6
7
8
9
10
11
12
13
14 package ch.qos.logback.core.encoder;
15
16 import static org.junit.jupiter.api.Assertions.assertEquals;
17
18 import java.util.Random;
19
20 import org.junit.jupiter.api.Test;
21
22 public class ByteArrayUtilTest {
23
24 int BA_SIZE = 16;
25 byte[] byteArray = new byte[BA_SIZE];
26
27 Random random = new Random(18532235);
28
29 @Test
30 public void smoke() {
31 verifyLoop(byteArray, 0, 0);
32 verifyLoop(byteArray, 0, 10);
33 verifyLoop(byteArray, 0, Integer.MAX_VALUE);
34 verifyLoop(byteArray, 0, Integer.MIN_VALUE);
35 }
36
37 @Test
38 public void random() {
39 for (int i = 0; i < 100000; i++) {
40 int rOffset = random.nextInt(BA_SIZE - 4);
41 int rInt = random.nextInt();
42 verifyLoop(byteArray, rOffset, rInt);
43 }
44 }
45
46 void verifyLoop(byte[] ba, int offset, int expected) {
47 ByteArrayUtil.writeInt(byteArray, offset, expected);
48 int back = ByteArrayUtil.readInt(byteArray, offset);
49 assertEquals(expected, back);
50
51 }
52
53 }