### Question:
Utils { @SafeVarargs public static <T> T[] mergeArrays(T[]... arr) { int size = 0; for (T[] ts : arr) { size += ts.length; } @SuppressWarnings("unchecked") T[] ret = (T[]) Array.newInstance(arr[0].getClass().getComponentType(), size); int off = 0; for (T[] ts : arr) { System.arraycopy(ts, 0, ret, off, ts.length); off += ts.length; } return ret; }  static String longToTimePeriod(long msec); static SecureRandom getRandom(); static String getNodeIdShort(String nodeId); static long toUnixTime(long javaTime); static long fromUnixTime(long unixTime); @SafeVarargs static T[] mergeArrays(T[]... arr); static String align(String s, char fillChar, int targetLen, boolean alignRight); static String repeat(String s, int n); static void showErrorAndExit(String message, String... messages); static void showWarn(String message, String... messages); static String sizeToStr(long size); static void sleep(long ms); @Deprecated static long time();  }### Answer:
@Test public void mergeArrays() { Assert.assertEquals(2, Utils.mergeArrays(new String[] {"a", "b"}).length); }