mirror of
https://codeberg.org/PGPainless/sop-java.git
synced 2024-12-22 12:57:57 +01:00
Add javadoc to JUtils
This commit is contained in:
parent
104b3a4ec4
commit
61c5eb2962
1 changed files with 41 additions and 0 deletions
|
@ -12,10 +12,25 @@ import static org.junit.jupiter.api.Assertions.fail;
|
|||
|
||||
public class JUtils {
|
||||
|
||||
/**
|
||||
* Return true, if the given <pre>array</pre> starts with <pre>start</pre>.
|
||||
*
|
||||
* @param array array
|
||||
* @param start start
|
||||
* @return true if array starts with start, false otherwise
|
||||
*/
|
||||
public static boolean arrayStartsWith(byte[] array, byte[] start) {
|
||||
return arrayStartsWith(array, start, 0);
|
||||
}
|
||||
|
||||
/**
|
||||
* Return true, if the given <pre>array</pre> contains the given <pre>start</pre> at offset <pre>offset</pre>.
|
||||
*
|
||||
* @param array array
|
||||
* @param start start
|
||||
* @param offset offset
|
||||
* @return true, if array contains start at offset, false otherwise
|
||||
*/
|
||||
public static boolean arrayStartsWith(byte[] array, byte[] start, int offset) {
|
||||
if (offset < 0) {
|
||||
throw new IllegalArgumentException("Offset cannot be negative");
|
||||
|
@ -33,6 +48,12 @@ public class JUtils {
|
|||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Assert that the given <pre>array</pre> starts with <pre>start</pre>.
|
||||
*
|
||||
* @param array array
|
||||
* @param start start
|
||||
*/
|
||||
public static void assertArrayStartsWith(byte[] array, byte[] start) {
|
||||
if (!arrayStartsWith(array, start)) {
|
||||
byte[] actual = new byte[Math.min(start.length, array.length)];
|
||||
|
@ -43,6 +64,13 @@ public class JUtils {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Assert that the given <pre>array</pre> contains <pre>start</pre> at <pre>offset</pre>.
|
||||
*
|
||||
* @param array array
|
||||
* @param start start
|
||||
* @param offset offset
|
||||
*/
|
||||
public static void assertArrayStartsWith(byte[] array, byte[] start, int offset) {
|
||||
if (!arrayStartsWith(array, start, offset)) {
|
||||
byte[] actual = new byte[Math.min(start.length, array.length - offset)];
|
||||
|
@ -53,6 +81,12 @@ public class JUtils {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Assert equality of the given two ascii armored byte arrays, ignoring armor header lines.
|
||||
*
|
||||
* @param first first ascii armored bytes
|
||||
* @param second second ascii armored bytes
|
||||
*/
|
||||
public static void assertAsciiArmorEquals(byte[] first, byte[] second) {
|
||||
byte[] firstCleaned = removeArmorHeaders(first);
|
||||
byte[] secondCleaned = removeArmorHeaders(second);
|
||||
|
@ -60,6 +94,13 @@ public class JUtils {
|
|||
assertArrayEquals(firstCleaned, secondCleaned);
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove armor headers "Comment:", "Version:", "MessageID:", "Hash:" and "Charset:" along with their values
|
||||
* from the given ascii armored byte array.
|
||||
*
|
||||
* @param armor ascii armored byte array
|
||||
* @return ascii armored byte array with header lines removed
|
||||
*/
|
||||
public static byte[] removeArmorHeaders(byte[] armor) {
|
||||
String string = new String(armor, StandardCharsets.UTF_8);
|
||||
string = string.replaceAll("Comment: .+\\R", "")
|
||||
|
|
Loading…
Reference in a new issue