### Question:
LearnSort { public static int[] mergingSort(int[] array) { if (array.length <= 1) { return array; } int segmentLen = array.length >> 1; int[] leftArr = Arrays.copyOfRange(array, 0, segmentLen); int[] rightArr = Arrays.copyOfRange(array, segmentLen, array.length); return merge(mergingSort(leftArr), mergingSort(rightArr)); }  static int[] insertSort(int[] array); static int[] shellSort(int[] array); static int[] selectionSort(int[] array); static int[] heapSort(int[] array); static int[] bubbleSort(@NotNull int[] array); static int[] quickSort(@NotNull int[] array); static int[] mergingSort(int[] array); static int[] radixSort(@NotNull int[] arr); final static int[] originalArray; }### Answer:
@Test public void testMergingSort() throws Exception { Assert.assertThat(resultArray, Matchers.equalTo(LearnSort.mergingSort(originalArray))); }