public void testGetNextDiffValueIndex() { LongList testList1 = LongArray.create(1, 1, 2, 2, 2, 2, 3, 2); IntList expectedIndexes = IntArray.create(0, 2, 6, 7); CHECK.order(getNextDifferentValueIndex(testList1), expectedIndexes.iterator()); LongSameValuesList testList2 = new LongSameValuesList(); testList2.addAll(testList1); CHECK.order(getNextDifferentValueIndex(testList2), expectedIndexes.iterator()); LongList testList3 = LongArray.create(0, 0, 1, 1, 1, 1, 10, 1); CHECK.order(getNextDifferentValueIndex(testList3), expectedIndexes.iterator()); LongSameValuesList testList4 = new LongSameValuesList(); testList4.addAll(testList3); CHECK.order(getNextDifferentValueIndex(testList4), expectedIndexes.iterator()); }
public void testGet() { long[] expected = {0, 1, 2, 5, 6, 7}; CHECK.order(indices.iterator(), decorator.getIndices().iterator()); CHECK.order(source.iterator(), decorator.getSource().iterator()); checkCollection(decorator, expected); }
public void testCompound() { long[][] valuesArray = {{0, 1, 2, 3, 4, 5, 6}, {10, 11, 12, 13, 14, 15, 16}}; int[][] indicesToRemove = {{0, 4, 1, 5}, {2, 6, 1}, {0, 6, 1, 2}}; for (long[] values : valuesArray) { LongArray array = LongArray.create(values); for (int[] indices : indicesToRemove) { IntList removedIndices = LongListRemovingDecorator.prepareUnsortedIndices(indices); LongListRemovingDecorator rem = createFromPrepared(array, removedIndices); LongArray expected = LongArray.copy(values); removedIndices = IntCollections.toSorted(false, new IntArray(indices)); expected.removeAllAtSorted(removedIndices.iterator()); CHECK.order(expected, rem); checkRemovedIndexes(rem, removedIndices.toNativeArray()); assertEquals(indices.length, rem.getRemoveCount()); } } }
public void testPutAllRemoveAllSimple() { LongArray keys = new LongArray(LongProgression.arithmetic(1, 10, 2)); IntList values = getSqrValues(keys); map.putAll(keys, values); checkMap(map, keys, values); try { map.putAll(keys, values.subList(0, values.size() - 1)); fail(); } catch (IllegalArgumentException _) { // ok } checkMap(map, keys, values); keys.addAll(LongProgression.arithmetic(0, 10, 2)); values = getSqrValues(keys); map.putAll(keys.toNativeArray(), values.toNativeArray()); checkMap(map, keys, values); map.removeAll(keys); assertTrue(map.isEmpty()); keys = generateRandomLongArray(10, UNORDERED); values = getSqrValues(keys); map.putAll(LongIntIterators.pair(keys.iterator(), values.iterator())); checkMap(map, keys, values); }