Search in sources :

Example 11 with PageCursor

use of org.neo4j.io.pagecache.PageCursor in project neo4j by neo4j.

the class CompositePageCursorTest method pageIdEqualSecondCursorPageIdAfterFlip.

@Test
public void pageIdEqualSecondCursorPageIdAfterFlip() throws Exception {
    PageCursor pageCursor = CompositePageCursor.compose(first, PAGE_SIZE, second, PAGE_SIZE);
    assertNotEquals(second.getCurrentPageId(), pageCursor.getCurrentPageId());
    pageCursor.getLong();
    assertNotEquals(second.getCurrentPageId(), pageCursor.getCurrentPageId());
    pageCursor.getLong();
    assertEquals(second.getCurrentPageId(), pageCursor.getCurrentPageId());
}
Also used : PageCursor(org.neo4j.io.pagecache.PageCursor) StubPageCursor(org.neo4j.io.pagecache.StubPageCursor) Test(org.junit.Test)

Example 12 with PageCursor

use of org.neo4j.io.pagecache.PageCursor in project neo4j by neo4j.

the class CompositePageCursorTest method putLongOffsettedBeforeFirstPageMustRaiseBoundsFlag.

@Test
public void putLongOffsettedBeforeFirstPageMustRaiseBoundsFlag() throws Exception {
    PageCursor pageCursor = CompositePageCursor.compose(first, PAGE_SIZE, second, PAGE_SIZE);
    pageCursor.putLong(-1, (long) 1);
    assertTrue(pageCursor.checkAndClearBoundsFlag());
    assertFalse(pageCursor.checkAndClearBoundsFlag());
}
Also used : PageCursor(org.neo4j.io.pagecache.PageCursor) StubPageCursor(org.neo4j.io.pagecache.StubPageCursor) Test(org.junit.Test)

Example 13 with PageCursor

use of org.neo4j.io.pagecache.PageCursor in project neo4j by neo4j.

the class CompositePageCursorTest method getByteMustRespectOffsetIntoSecondCursor.

@Test
public void getByteMustRespectOffsetIntoSecondCursor() throws Exception {
    second.setOffset(1);
    PageCursor c = CompositePageCursor.compose(first, 1, second, 1);
    assertThat(c.getByte(), is((byte) 0xA0));
    assertThat(c.getByte(), is((byte) 0xB1));
    assertFalse(c.checkAndClearBoundsFlag());
}
Also used : PageCursor(org.neo4j.io.pagecache.PageCursor) StubPageCursor(org.neo4j.io.pagecache.StubPageCursor) Test(org.junit.Test)

Example 14 with PageCursor

use of org.neo4j.io.pagecache.PageCursor in project neo4j by neo4j.

the class CompositePageCursorTest method putShortWithOffsetMustHitCorrectCursors.

@Test
public void putShortWithOffsetMustHitCorrectCursors() throws Exception {
    first.setOffset(1);
    second.setOffset(2);
    PageCursor c = CompositePageCursor.compose(first, 2 * 2, second, 2 * 2);
    c.putShort(2, (short) 1);
    c.putShort(2 + 2, (short) 2);
    assertThat(c.getShort(), is((short) 0xA1A2));
    assertThat(c.getShort(), is((short) 1));
    assertThat(c.getShort(), is((short) 2));
    assertThat(c.getShort(), is((short) 0xB4B5));
    assertFalse(c.checkAndClearBoundsFlag());
}
Also used : PageCursor(org.neo4j.io.pagecache.PageCursor) StubPageCursor(org.neo4j.io.pagecache.StubPageCursor) Test(org.junit.Test)

Example 15 with PageCursor

use of org.neo4j.io.pagecache.PageCursor in project neo4j by neo4j.

the class CompositePageCursorTest method nextIsNotSupportedOperation.

@Test(expected = UnsupportedOperationException.class)
public void nextIsNotSupportedOperation() throws Exception {
    PageCursor pageCursor = CompositePageCursor.compose(first, PAGE_SIZE, second, PAGE_SIZE);
    pageCursor.next();
}
Also used : PageCursor(org.neo4j.io.pagecache.PageCursor) StubPageCursor(org.neo4j.io.pagecache.StubPageCursor) Test(org.junit.Test)

Aggregations

PageCursor (org.neo4j.io.pagecache.PageCursor)184 Test (org.junit.Test)124 StubPageCursor (org.neo4j.io.pagecache.StubPageCursor)106 PagedFile (org.neo4j.io.pagecache.PagedFile)19 IOException (java.io.IOException)12 File (java.io.File)8 CursorException (org.neo4j.io.pagecache.CursorException)6 PageCacheTest (org.neo4j.io.pagecache.PageCacheTest)6 CompositePageCursor (org.neo4j.io.pagecache.impl.CompositePageCursor)6 DelegatingPageCursor (org.neo4j.io.pagecache.impl.DelegatingPageCursor)6 ByteBuffer (java.nio.ByteBuffer)5 DelegatingStoreChannel (org.neo4j.graphdb.mockfs.DelegatingStoreChannel)5 StoreChannel (org.neo4j.io.fs.StoreChannel)4 DelegatingPagedFile (org.neo4j.io.pagecache.DelegatingPagedFile)4 ConfigurablePageCursorTracerSupplier (org.neo4j.io.pagecache.tracing.ConfigurablePageCursorTracerSupplier)4 RecordingPageCacheTracer (org.neo4j.io.pagecache.tracing.recording.RecordingPageCacheTracer)4 Evict (org.neo4j.io.pagecache.tracing.recording.RecordingPageCacheTracer.Evict)4 RecordingPageCursorTracer (org.neo4j.io.pagecache.tracing.recording.RecordingPageCursorTracer)4 Fault (org.neo4j.io.pagecache.tracing.recording.RecordingPageCursorTracer.Fault)4 AtomicLong (java.util.concurrent.atomic.AtomicLong)3