@Test public void mergeBiFunction() throws Exception { MergerBiFunction<Integer> f = new MergerBiFunction<Integer>(Functions.<Integer>naturalComparator()); assertEquals(0, f.apply(Collections.<Integer>emptyList(), Collections.<Integer>emptyList()).size()); assertEquals(Arrays.asList(1, 2), f.apply(Collections.<Integer>emptyList(), Arrays.asList(1, 2))); for (int i = 0; i < 4; i++) { int k = 0; List<Integer> list1 = new ArrayList<Integer>(); for (int j = 0; j < i; j++) { list1.add(k++); } List<Integer> list2 = new ArrayList<Integer>(); for (int j = i; j < 4; j++) { list2.add(k++); } assertEquals(Arrays.asList(0, 1, 2, 3), f.apply(list1, list2)); } }