i1.next(); assertEquals(1, i1.age()); LongCyclicQueue.PinnedIterator i2 = clq.pinnedIterator().next().next().next(); assertEquals(3, i2.age()); LongCyclicQueue.PinnedIterator i3 = clq.pinnedIterator().next().next().next().next().next(); assertEquals("(10*, 11, 12*, 13, 14*)", clq.toStringWithPiterators()); i3.next().next().next().next().next(); assertEquals("[15] (12*, 13, 14, 15, 16, ..., 19*, ..., 22, 23, 24, 25, 26)", clq.toStringWithPiterators()); for (int i = 0; i < 7; ++i) i4.next(); assertEquals("[15] (12*, 13, 14, 15, 16, ..., 18*, 19*, ..., 22, 23, 24, 25, 26)", clq.toStringWithPiterators()); LongCyclicQueue.PinnedIterator it = clq.pinnedIterator(9); assertEquals("[15] (12*, 13, 14, 15, 16, 17*, 18*, 19*, ..., 21*, 22, 23, 24, 25, 26)", clq.toStringWithPiterators()); it.next(); assertEquals("[15] (12*, 13, 14, 15, 16, 17*, 18*, 19*, ..., 21*, 22, 23, 24, 25, 26)", clq.toStringWithPiterators()); it.next(); assertEquals("[15] (12*, 13, 14, 15, 16, 17*, 18*, 19*, ..., 22*, 23, 24, 25, 26)", clq.toStringWithPiterators());
public void testPiteratorIndex2() { int mSize = 15; for (int startIdx = 0; startIdx < mSize; startIdx++) { for (int pinnedIdx = 0; pinnedIdx < mSize; pinnedIdx++) { LongCyclicQueue queue = new LongCyclicQueue(); queue.addAll(LongCollections.repeat(-1, startIdx)); queue.removeFirst(startIdx); queue.addAll(range(mSize)); LongCyclicQueue.PinnedIterator it = queue.pinnedIterator(); checkRemoveAndCatchISE(queue, -1); it.next(); assertEquals(0, it.index()); it.detach(); it = queue.pinnedIterator(pinnedIdx); checkRemoveAndCatchISE(queue, pinnedIdx + 1); it.next(); assertEquals(pinnedIdx != mSize - 1, it.hasNext()); assertEquals("startIdx = " + startIdx, pinnedIdx, it.index()); queue.addAll(1, 2, 3); assertEquals(pinnedIdx, it.index()); if (pinnedIdx != 0) { queue.removeFirst(); assertEquals(pinnedIdx - 1, it.index()); } } } }
public void testPiteratorIndex() { myArray.addAll(LongIterators.range(15)); CHECK.order(range(15), myArray); LongCyclicQueue.PinnedIterator it = myArray.pinnedIterator(); try { it.index(); fail(); } catch (NoSuchElementException _) { // ok } assertEquals(0, it.age()); for (int i = 0; i < 10; i++) { it.next(); assertEquals(i, it.index()); } myArray.addAll(15, 16, 17); assertEquals(9, it.index()); for (int i = 1; i < 10; i++) { myArray.removeFirst(); assertEquals(9 - i, it.index()); } }
public void testPiteratorSimple() { LongCyclicQueue clq = new LongCyclicQueue(); clq.addAll(LongIterators.range(15)); LongCyclicQueue.PinnedIterator ii = clq.pinnedIterator(3); clq.removeFirst(3); ii.next(); assertEquals(0, ii.index()); ii = clq.pinnedIterator().next(); assertEquals(0, ii.index()); }