|
2 | 2 |
|
3 | 3 | import static org.junit.jupiter.api.Assertions.assertEquals;
|
4 | 4 |
|
5 |
| -import org.junit.jupiter.api.Test; |
| 5 | +import org.junit.jupiter.params.ParameterizedTest; |
| 6 | +import org.junit.jupiter.params.provider.CsvSource; |
6 | 7 |
|
7 | 8 | public class EndianConverterTest {
|
8 | 9 |
|
9 |
| - @Test |
10 |
| - public void testBigToLittleEndian() { |
11 |
| - assertEquals(0x78563412, EndianConverter.bigToLittleEndian(0x12345678)); |
12 |
| - assertEquals(0x00000000, EndianConverter.bigToLittleEndian(0x00000000)); |
13 |
| - assertEquals(0x00000001, EndianConverter.bigToLittleEndian(0x01000000)); |
| 10 | + @ParameterizedTest |
| 11 | + @CsvSource({ |
| 12 | + "0x78563412, 0x12345678", "0x00000000, 0x00000000", "0x00000001, 0x01000000", |
| 13 | + "0xFFFFFFFF, 0xFFFFFFFF", // -1 in two's complement |
| 14 | + "0x0000007F, 0x7F000000" // Positive boundary case |
| 15 | + }) |
| 16 | + public void |
| 17 | + testLittleToBigEndian(String inputHex, String expectedHex) { |
| 18 | + int input = (int) Long.parseLong(inputHex.substring(2), 16); // Convert hex string to int |
| 19 | + int expected = (int) Long.parseLong(expectedHex.substring(2), 16); // Convert hex string to int |
| 20 | + assertEquals(expected, EndianConverter.littleToBigEndian(input)); |
14 | 21 | }
|
15 | 22 |
|
16 |
| - @Test |
17 |
| - public void testLittleToBigEndian() { |
18 |
| - assertEquals(0x12345678, EndianConverter.littleToBigEndian(0x78563412)); |
19 |
| - assertEquals(0x00000000, EndianConverter.littleToBigEndian(0x00000000)); |
20 |
| - assertEquals(0x01000000, EndianConverter.littleToBigEndian(0x00000001)); |
| 23 | + @ParameterizedTest |
| 24 | + @CsvSource({ |
| 25 | + "0x12345678, 0x78563412", "0x00000000, 0x00000000", "0x01000000, 0x00000001", |
| 26 | + "0xFFFFFFFF, 0xFFFFFFFF", // -1 in two's complement |
| 27 | + "0x7F000000, 0x0000007F" // Positive boundary case |
| 28 | + }) |
| 29 | + public void |
| 30 | + testBigToLittleEndian(String inputHex, String expectedHex) { |
| 31 | + int input = (int) Long.parseLong(inputHex.substring(2), 16); // Convert hex string to int |
| 32 | + int expected = (int) Long.parseLong(expectedHex.substring(2), 16); // Convert hex string to int |
| 33 | + assertEquals(expected, EndianConverter.bigToLittleEndian(input)); |
21 | 34 | }
|
22 | 35 | }
|
0 commit comments