internal virtual void AssertEmpty(RelationshipSelectionCursor cursor)
 {
     assertFalse("no more", cursor.Next());
 }
 internal virtual void AssertIncoming(RelationshipSelectionCursor cursor, int sourceNode, int type)
 {
     assertTrue("has next", cursor.Next());
     assertEquals("expected type", type, cursor.Type());
     assertEquals("expected source", sourceNode, cursor.SourceNodeReference());
 }
 internal virtual void AssertLoop(RelationshipSelectionCursor cursor, int type)
 {
     assertTrue("has next", cursor.Next());
     assertEquals("expected type", type, cursor.Type());
     assertEquals("expected loop", cursor.SourceNodeReference(), cursor.TargetNodeReference());
 }
 internal virtual void AssertOutgoing(RelationshipSelectionCursor cursor, int targetNode, int type)
 {
     assertTrue("has next", cursor.Next());
     assertEquals("expected type", type, cursor.Type());
     assertEquals("expected target", targetNode, cursor.TargetNodeReference());
 }