Package org.apache.tinkerpop.gremlin
Class AbstractGremlinTest
- java.lang.Object
-
- org.apache.tinkerpop.gremlin.AbstractGremlinTest
-
- Direct Known Subclasses:
AbstractGeneratorTest
,AbstractGremlinProcessTest
,AddVertexTest
,CommunityGeneratorTest.ProcessorTest
,DetachedEdgeTest
,DetachedGraphTest
,DetachedPropertyTest
,DetachedVertexPropertyTest
,DetachedVertexTest
,DistributionGeneratorTest.ProcessorTest
,DropTest
,EdgeTest.BasicEdgeTest
,FeatureSupportTest.EdgeFunctionalityTest
,FeatureSupportTest.ElementPropertyDataTypeFunctionalityTest
,FeatureSupportTest.FeatureToStringTest
,FeatureSupportTest.GraphFunctionalityTest
,FeatureSupportTest.GraphVariablesFunctionalityTest
,FeatureSupportTest.LogicalFeatureSupportTest
,FeatureSupportTest.VertexFunctionalityTest
,FeatureSupportTest.VertexPropertyFunctionalityTest
,GraphConstructionTest
,GraphTest
,IoCustomTest
,IoEdgeTest
,IoGraphTest
,IoPropertyTest
,IoTest.GraphMLTest
,IoTest.GraphSONLegacyTest
,IoTest.GraphSONTest
,IoTest.GraphSONV2Test
,IoTest.GraphSONV3Test
,IoTest.GryoTest
,IoVertexTest
,MergeEdgeTest
,MergeVertexTest
,PropertyTest.BasicPropertyTest
,PropertyTest.ElementGetValueExceptionConsistencyTest
,PropertyTest.PropertyFeatureSupportTest
,PropertyTest.PropertyValidationOnAddExceptionConsistencyTest
,PropertyTest.PropertyValidationOnSetExceptionConsistencyTest
,ReferenceEdgeTest
,ReferenceGraphTest
,ReferenceVertexPropertyTest
,ReferenceVertexTest
,SerializationTest.GraphSONV1Test
,SerializationTest.GraphSONV2Test
,SerializationTest.GraphSONV3Test
,SerializationTest.GryoV1Test
,SerializationTest.GryoV3Test
,StarGraphTest
,TransactionMultiThreadedTest
,TransactionTest
,VariablesTest.GraphVariablesFeatureSupportTest
,VariablesTest.StringRepresentationTest
,VariablesTest.VariableAsMapTest
,VariablesTest.VariableExceptionConsistencyTest
,VertexPropertyTest
,VertexPropertyTest.BasicVertexProperty
,VertexPropertyTest.VertexPropertyAddition
,VertexPropertyTest.VertexPropertyProperties
,VertexPropertyTest.VertexPropertyRemoval
,VertexTest.AddEdgeTest
,VertexTest.BasicVertexTest
public abstract class AbstractGremlinTest extends Object
Sets up g based on the current graph configuration and checks required features for the test.- Author:
- Stephen Mallette (http://stephen.genoprime.com)
-
-
Field Summary
Fields Modifier and Type Field Description protected org.apache.commons.configuration2.Configuration
config
protected GraphTraversalSource
g
protected Graph
graph
protected GraphProvider
graphProvider
org.junit.rules.TestName
name
protected static boolean
shouldTestIteratorLeak
-
Constructor Summary
Constructors Constructor Description AbstractGremlinTest()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
afterLoadGraphWith(Graph g)
static void
assertVertexEdgeCounts(Graph graph, int expectedVertexCount, int expectedEdgeCount)
protected void
beforeLoadGraphWith(Graph g)
Edge
convertToEdge(String outVertexName, String edgeLabel, String inVertexName)
Edge
convertToEdge(Graph graph, String outVertexName, String edgeLabel, String inVertexName)
Object
convertToEdgeId(String outVertexName, String edgeLabel, String inVertexName)
Object
convertToEdgeId(Graph graph, String outVertexName, String edgeLabel, String inVertexName)
Vertex
convertToVertex(String vertexName)
Vertex
convertToVertex(Graph graph, String vertexName)
Object
convertToVertexId(String vertexName)
Looks up the identifier as generated by the current source graph being tested.Object
convertToVertexId(Graph graph, String vertexName)
Looks up the identifier as generated by the current source graph being tested.VertexProperty
convertToVertexProperty(String vertexName, String propertyKey, Object propertyValue)
GraphTraversal<Vertex,VertexProperty<Object>>
convertToVertexProperty(Graph graph, String vertexName, String vertexPropertyKey)
GraphTraversal<Vertex,Object>
convertToVertexPropertyId(String vertexName, String vertexPropertyKey)
GraphTraversal<Vertex,Object>
convertToVertexPropertyId(Graph graph, String vertexName, String vertexPropertyKey)
static Consumer<Graph>
getAssertVertexEdgeCounts(int expectedVertexCount, int expectedEdgeCount)
void
printTraversalForm(Traversal traversal)
void
setup()
void
tearDown()
void
tryCommit(Graph graph)
Utility method that commits if the graph supports transactions.void
tryCommit(Graph graph, Consumer<Graph> assertFunction)
Utility method that commits if the graph supports transactions and executes an assertion function before and after the commit.void
tryRollback(Graph graph)
Utility method that rollsback if the graph supports transactions.static void
validateException(Throwable expected, Throwable actual)
static void
verifyRootIdentification(Traversal.Admin<?,?> traversal, boolean expectRoot)
Ensures that theTraversal
and all of its children is constructed in a fashion where the parent/child relationship is properly established.static void
verifyUniqueStepIds(Traversal.Admin<?,?> traversal)
-
-
-
Field Detail
-
shouldTestIteratorLeak
protected static final boolean shouldTestIteratorLeak
-
graph
protected Graph graph
-
g
protected GraphTraversalSource g
-
config
protected org.apache.commons.configuration2.Configuration config
-
graphProvider
protected GraphProvider graphProvider
-
name
public org.junit.rules.TestName name
-
-
Method Detail
-
convertToVertexId
public Object convertToVertexId(String vertexName)
Looks up the identifier as generated by the current source graph being tested.- Parameters:
vertexName
- a unique string that will identify a graph element within a graph- Returns:
- the id as generated by the graph
-
convertToVertexId
public Object convertToVertexId(Graph graph, String vertexName)
Looks up the identifier as generated by the current source graph being tested.- Parameters:
graph
- the graph to get the element id fromvertexName
- a unique string that will identify a graph element within a graph- Returns:
- the id as generated by the graph
-
convertToVertexPropertyId
public GraphTraversal<Vertex,Object> convertToVertexPropertyId(String vertexName, String vertexPropertyKey)
-
convertToVertexPropertyId
public GraphTraversal<Vertex,Object> convertToVertexPropertyId(Graph graph, String vertexName, String vertexPropertyKey)
-
convertToVertexProperty
public GraphTraversal<Vertex,VertexProperty<Object>> convertToVertexProperty(Graph graph, String vertexName, String vertexPropertyKey)
-
convertToVertexProperty
public VertexProperty convertToVertexProperty(String vertexName, String propertyKey, Object propertyValue)
-
convertToEdge
public Edge convertToEdge(String outVertexName, String edgeLabel, String inVertexName)
-
convertToEdge
public Edge convertToEdge(Graph graph, String outVertexName, String edgeLabel, String inVertexName)
-
convertToEdgeId
public Object convertToEdgeId(String outVertexName, String edgeLabel, String inVertexName)
-
convertToEdgeId
public Object convertToEdgeId(Graph graph, String outVertexName, String edgeLabel, String inVertexName)
-
tryCommit
public void tryCommit(Graph graph)
Utility method that commits if the graph supports transactions.
-
tryCommit
public void tryCommit(Graph graph, Consumer<Graph> assertFunction)
Utility method that commits if the graph supports transactions and executes an assertion function before and after the commit. It assumes that the assertion should be true before and after the commit.
-
tryRollback
public void tryRollback(Graph graph)
Utility method that rollsback if the graph supports transactions.
-
printTraversalForm
public void printTraversalForm(Traversal traversal)
-
assertVertexEdgeCounts
public static void assertVertexEdgeCounts(Graph graph, int expectedVertexCount, int expectedEdgeCount)
-
getAssertVertexEdgeCounts
public static Consumer<Graph> getAssertVertexEdgeCounts(int expectedVertexCount, int expectedEdgeCount)
-
verifyUniqueStepIds
public static void verifyUniqueStepIds(Traversal.Admin<?,?> traversal)
-
verifyRootIdentification
public static void verifyRootIdentification(Traversal.Admin<?,?> traversal, boolean expectRoot)
Ensures that theTraversal
and all of its children is constructed in a fashion where the parent/child relationship is properly established.
-
-