@Test
    public void testFeistel() {

        byte[] subKey1 = ByteHelper.convertBinaryStringToByteArray("000110 110000 001011 101111 111111 000111 000001 110010");
        byte[] blockR0 = ByteHelper.convertBinaryStringToByteArray("11110000 10101010 11110000 10101010");

        byte[] expectedResult = ByteHelper.convertBinaryStringToByteArray("0010 0011 0100 1010 1010 1001 1011 1011");

        try {
            byte[] result = Feistel.executeFunction(blockR0, subKey1);

            System.out.println();
            System.out.println("Feistel expected vs actual result");
            ByteHelper.printByteArray(expectedResult);
            ByteHelper.printByteArray(result);

            assertArrayEquals(expectedResult, result);
        } catch (Exception e) {
            e.printStackTrace();
            fail();
        }
    }