Search in sources :

Example 96 with XdmNodeReadTrx

use of org.sirix.api.XdmNodeReadTrx in project sirix by sirixdb.

the class XdmResourceManagerTest method testClosed.

@Test
public void testClosed() {
    final XdmNodeReadTrx rtx = holder.getReader();
    rtx.close();
    try {
        rtx.getAttributeCount();
        fail();
    } catch (final IllegalStateException e) {
    // Must fail.
    } finally {
        holder.getResourceManager().close();
    }
}
Also used : XdmNodeReadTrx(org.sirix.api.XdmNodeReadTrx) Test(org.junit.Test)

Example 97 with XdmNodeReadTrx

use of org.sirix.api.XdmNodeReadTrx in project sirix by sirixdb.

the class XdmResourceManagerTest method testShreddedRevision.

@Test
public void testShreddedRevision() {
    try (final XdmNodeWriteTrx wtx = holder.getResourceManager().beginNodeWriteTrx()) {
        DocumentCreater.create(wtx);
        assertEquals(1L, wtx.getRevisionNumber());
        wtx.commit();
    }
    try (final XdmNodeReadTrx rtx = holder.getResourceManager().beginNodeReadTrx()) {
        assertEquals(1L, rtx.getRevisionNumber());
        rtx.moveTo(12L);
        assertEquals("bar", rtx.getValue());
        try (final XdmNodeWriteTrx wtx = holder.getResourceManager().beginNodeWriteTrx()) {
            assertEquals(2L, wtx.getRevisionNumber());
            wtx.moveTo(12L);
            wtx.setValue("bar2");
            assertEquals("bar", rtx.getValue());
            assertEquals("bar2", wtx.getValue());
            wtx.rollback();
        }
    }
    try (final XdmNodeReadTrx rtx = holder.getResourceManager().beginNodeReadTrx()) {
        assertEquals(1L, rtx.getRevisionNumber());
        rtx.moveTo(12L);
        assertEquals("bar", rtx.getValue());
    }
}
Also used : XdmNodeWriteTrx(org.sirix.api.XdmNodeWriteTrx) XdmNodeReadTrx(org.sirix.api.XdmNodeReadTrx) Test(org.junit.Test)

Example 98 with XdmNodeReadTrx

use of org.sirix.api.XdmNodeReadTrx in project sirix by sirixdb.

the class XdmResourceManagerTest method testExisting.

@Test
public void testExisting() {
    final Database database = TestHelper.getDatabase(PATHS.PATH1.getFile());
    final ResourceManager resource = database.getResourceManager(new ResourceManagerConfiguration.Builder(TestHelper.RESOURCE).build());
    final XdmNodeWriteTrx wtx1 = resource.beginNodeWriteTrx();
    DocumentCreater.create(wtx1);
    assertEquals(1L, wtx1.getRevisionNumber());
    wtx1.commit();
    wtx1.close();
    resource.close();
    final ResourceManager resource2 = database.getResourceManager(new ResourceManagerConfiguration.Builder(TestHelper.RESOURCE).build());
    final XdmNodeReadTrx rtx1 = resource2.beginNodeReadTrx();
    assertEquals(1L, rtx1.getRevisionNumber());
    rtx1.moveTo(12L);
    assertEquals("bar", rtx1.getValue());
    final XdmNodeWriteTrx wtx2 = resource2.beginNodeWriteTrx();
    assertEquals(2L, wtx2.getRevisionNumber());
    wtx2.moveTo(12L);
    wtx2.setValue("bar2");
    assertEquals("bar", rtx1.getValue());
    assertEquals("bar2", wtx2.getValue());
    rtx1.close();
    wtx2.commit();
    wtx2.close();
    final Database database2 = TestHelper.getDatabase(PATHS.PATH1.getFile());
    final ResourceManager resource3 = database2.getResourceManager(new ResourceManagerConfiguration.Builder(TestHelper.RESOURCE).build());
    final XdmNodeReadTrx rtx2 = resource3.beginNodeReadTrx();
    assertEquals(2L, rtx2.getRevisionNumber());
    rtx2.moveTo(12L);
    assertEquals("bar2", rtx2.getValue());
    rtx2.close();
    resource3.close();
}
Also used : XdmNodeWriteTrx(org.sirix.api.XdmNodeWriteTrx) XdmNodeReadTrx(org.sirix.api.XdmNodeReadTrx) Database(org.sirix.api.Database) ResourceManager(org.sirix.api.ResourceManager) Test(org.junit.Test)

Example 99 with XdmNodeReadTrx

use of org.sirix.api.XdmNodeReadTrx in project sirix by sirixdb.

the class DescendantAxisTest method testIterateIncludingSelf.

@Test
public void testIterateIncludingSelf() throws SirixException {
    final XdmNodeReadTrx rtx = holder.getReader();
    rtx.moveToDocumentRoot();
    AbsAxisTest.testIAxisConventions(new DescendantAxis(rtx, IncludeSelf.YES), new long[] { Fixed.DOCUMENT_NODE_KEY.getStandardProperty(), 1L, 4L, 5L, 6L, 7L, 8L, 9L, 11L, 12L, 13L });
    new IteratorTester<Long>(ITERATIONS, IteratorFeature.UNMODIFIABLE, ImmutableList.of(Fixed.DOCUMENT_NODE_KEY.getStandardProperty(), 1L, 4L, 5L, 6L, 7L, 8L, 9L, 11L, 12L, 13L), null) {

        @Override
        protected Iterator<Long> newTargetIterator() {
            final XdmNodeReadTrx rtx = holder.getReader();
            rtx.moveToDocumentRoot();
            return new DescendantAxis(rtx, IncludeSelf.YES);
        }
    }.test();
    rtx.moveTo(1L);
    AbsAxisTest.testIAxisConventions(new DescendantAxis(rtx, IncludeSelf.YES), new long[] { 1L, 4L, 5L, 6L, 7L, 8L, 9L, 11L, 12L, 13L });
    new IteratorTester<Long>(ITERATIONS, IteratorFeature.UNMODIFIABLE, ImmutableList.of(1L, 4L, 5L, 6L, 7L, 8L, 9L, 11L, 12L, 13L), null) {

        @Override
        protected Iterator<Long> newTargetIterator() {
            final XdmNodeReadTrx rtx = holder.getReader();
            rtx.moveTo(1L);
            return new DescendantAxis(rtx, IncludeSelf.YES);
        }
    }.test();
    rtx.moveTo(9L);
    AbsAxisTest.testIAxisConventions(new DescendantAxis(rtx, IncludeSelf.YES), new long[] { 9L, 11L, 12L });
    new IteratorTester<Long>(ITERATIONS, IteratorFeature.UNMODIFIABLE, ImmutableList.of(9L, 11L, 12L), null) {

        @Override
        protected Iterator<Long> newTargetIterator() {
            final XdmNodeReadTrx rtx = holder.getReader();
            rtx.moveTo(9L);
            return new DescendantAxis(rtx, IncludeSelf.YES);
        }
    }.test();
    rtx.moveTo(13L);
    AbsAxisTest.testIAxisConventions(new DescendantAxis(rtx, IncludeSelf.YES), new long[] { 13L });
    new IteratorTester<Long>(ITERATIONS, IteratorFeature.UNMODIFIABLE, ImmutableList.of(13L), null) {

        @Override
        protected Iterator<Long> newTargetIterator() {
            final XdmNodeReadTrx rtx = holder.getReader();
            rtx.moveTo(13L);
            return new DescendantAxis(rtx, IncludeSelf.YES);
        }
    }.test();
}
Also used : XdmNodeReadTrx(org.sirix.api.XdmNodeReadTrx) Iterator(java.util.Iterator) Test(org.junit.Test)

Example 100 with XdmNodeReadTrx

use of org.sirix.api.XdmNodeReadTrx in project sirix by sirixdb.

the class FollowingAxisTest method testAxisConventions.

@Test
public void testAxisConventions() throws SirixException {
    final XdmNodeReadTrx rtx = holder.getReader();
    rtx.moveTo(11L);
    AbsAxisTest.testIAxisConventions(new FollowingAxis(rtx), new long[] { 12L, 13L });
    rtx.moveTo(5L);
    AbsAxisTest.testIAxisConventions(new FollowingAxis(rtx), new long[] { 8L, 9L, 11L, 12L, 13L });
    rtx.moveTo(13L);
    AbsAxisTest.testIAxisConventions(new FollowingAxis(rtx), new long[] {});
    rtx.moveTo(1L);
    AbsAxisTest.testIAxisConventions(new FollowingAxis(rtx), new long[] {});
    rtx.moveToDocumentRoot();
    AbsAxisTest.testIAxisConventions(new FollowingAxis(rtx), new long[] {});
    rtx.moveTo(9L);
    rtx.moveToAttribute(0);
    AbsAxisTest.testIAxisConventions(new FollowingAxis(rtx), new long[] {});
}
Also used : XdmNodeReadTrx(org.sirix.api.XdmNodeReadTrx) Test(org.junit.Test)

Aggregations

XdmNodeReadTrx (org.sirix.api.XdmNodeReadTrx)150 Test (org.junit.Test)93 XdmNodeWriteTrx (org.sirix.api.XdmNodeWriteTrx)48 QNm (org.brackit.xquery.atomic.QNm)20 DescendantAxis (org.sirix.axis.DescendantAxis)17 Iterator (java.util.Iterator)16 ResourceManager (org.sirix.api.ResourceManager)14 Axis (org.sirix.api.Axis)13 DBNode (org.sirix.xquery.node.DBNode)12 QueryException (org.brackit.xquery.QueryException)11 FilterAxis (org.sirix.axis.filter.FilterAxis)11 IndexController (org.sirix.access.IndexController)10 IndexDef (org.sirix.index.IndexDef)10 Item (org.brackit.xquery.xdm.Item)7 Database (org.sirix.api.Database)7 SirixException (org.sirix.exception.SirixException)6 NonStructuralWrapperAxis (org.sirix.axis.NonStructuralWrapperAxis)5 SirixDeweyID (org.sirix.node.SirixDeweyID)5 Path (java.nio.file.Path)4 AbsAxisTest (org.sirix.axis.AbsAxisTest)4