package com.orientechnologies.orient.graph; import com.orientechnologies.orient.core.exception.ORecordNotFoundException; import org.junit.After; import org.junit.Before; import org.junit.Test; import com.orientechnologies.orient.core.metadata.schema.OType; import com.tinkerpop.blueprints.Vertex; import com.tinkerpop.blueprints.impls.orient.OrientEdge; import com.tinkerpop.blueprints.impls.orient.OrientGraph; import com.tinkerpop.blueprints.impls.orient.OrientVertex; public class TestFailOperationOnRemovedElement { private OrientGraph grap; @Before public void before() { grap = new OrientGraph("memory:" + TestFailOperationOnRemovedElement.class.getSimpleName()); } @After public void after() { grap.drop(); } @Test(expected = ORecordNotFoundException.class) public void testAddEdgeOnRemovedVertexSameTransaction() { Vertex v = grap.addVertex(null); Vertex v1 = grap.addVertex(null); v.remove(); v.addEdge("test", v1); } @Test(expected = ORecordNotFoundException.class) public void testAddEdgeOnRemovedVertex() { Vertex v = grap.addVertex(null); Vertex v1 = grap.addVertex(null); grap.commit(); v.remove(); v.addEdge("test", v1); } @Test(expected = ORecordNotFoundException.class) public void testAddEdgeToRemovedVertex() { Vertex v = grap.addVertex(null); Vertex v1 = grap.addVertex(null); grap.commit(); v1.remove(); v.addEdge("test", v1); } @Test(expected = ORecordNotFoundException.class) public void testSetPropertyOnRemovedVertex() { Vertex v = grap.addVertex(null); grap.commit(); v.remove(); v.setProperty("test", "aaaa"); } @Test(expected = ORecordNotFoundException.class) public void testSetPropertyTypeOnRemovedVertex() { OrientVertex v = grap.addVertex(null); grap.commit(); v.remove(); v.setProperty("test", "aaaa", OType.STRING); } @Test(expected = ORecordNotFoundException.class) public void testSetPropertiesOnRemovedVertex() { OrientVertex v = grap.addVertex(null); grap.commit(); v.remove(); v.setProperties("test", "aaaa"); } @Test(expected = ORecordNotFoundException.class) public void testDoubleRemoveVertex() { OrientVertex v = grap.addVertex(null); grap.commit(); v.remove(); v.remove(); } @Test(expected = ORecordNotFoundException.class) public void testMoveToOfRemovedVertex() { OrientVertex v = grap.addVertex(null); grap.commit(); v.remove(); v.moveTo("test", "test"); } @Test(expected = ORecordNotFoundException.class) public void testSetPropertiesRemovedEdge() { OrientVertex v = grap.addVertex(null); OrientVertex v1 = grap.addVertex(null); OrientEdge e = (OrientEdge) v.addEdge("test", v1); grap.commit(); e.remove(); e.setProperties("test", "test"); } @Test(expected = ORecordNotFoundException.class) public void testSetPropertyRemovedEdge() { OrientVertex v = grap.addVertex(null); OrientVertex v1 = grap.addVertex(null); OrientEdge e = (OrientEdge) v.addEdge("test", v1); grap.commit(); e.remove(); e.setProperties("test", "test"); } @Test(expected = ORecordNotFoundException.class) public void testDoubleRemovedEdge() { OrientVertex v = grap.addVertex(null); OrientVertex v1 = grap.addVertex(null); OrientEdge e = (OrientEdge) v.addEdge("test", v1); grap.commit(); e.remove(); e.remove(); } @Test(expected = ORecordNotFoundException.class) public void testPropertyTypeRemovedEdge() { OrientVertex v = grap.addVertex(null); OrientVertex v1 = grap.addVertex(null); OrientEdge e = (OrientEdge) v.addEdge("test", v1); grap.commit(); e.remove(); e.setProperty("test", "test", OType.STRING); } }