Skip to content

Commit

Permalink
Augmented relationships cursor consistency test.
Browse files Browse the repository at this point in the history
Adds an additional test to check that augmenting a relationship cursor remains consistent with regards to the changed relationships in the current state.
  • Loading branch information
Max Sumrall committed Jan 5, 2016
1 parent 0682eec commit d54db9c
Show file tree
Hide file tree
Showing 6 changed files with 401 additions and 367 deletions.
Expand Up @@ -21,9 +21,15 @@

import org.neo4j.storageengine.api.RelationshipItem;

public abstract class RelationshipItemHelper
extends EntityItemHelper
implements RelationshipItem
public abstract class RelationshipItemHelper extends EntityItemHelper implements RelationshipItem
{

@Override
public String toString()
{
return "Relationship[" +
"id:" + id() + ", " +
"type:" + type() + ", " +
"startNode:" + startNode() + ", " +
"endNode:" + endNode() + "]";
}
}
Expand Up @@ -34,9 +34,8 @@
/**
* Overlays transaction state on a {@link RelationshipItem} cursor.
*/
public abstract class TxAbstractRelationshipCursor
extends EntityItemHelper implements Cursor<RelationshipItem>, RelationshipItem,
RelationshipVisitor<RuntimeException>
public abstract class TxAbstractRelationshipCursor extends EntityItemHelper
implements Cursor<RelationshipItem>, RelationshipItem, RelationshipVisitor<RuntimeException>
{
protected final TransactionState state;
private final Consumer<TxAbstractRelationshipCursor> instanceCache;
Expand All @@ -51,8 +50,7 @@ public abstract class TxAbstractRelationshipCursor
protected RelationshipState relationshipState;
protected boolean relationshipIsAddedInThisTx;

public TxAbstractRelationshipCursor( TransactionState state,
Consumer<TxAbstractRelationshipCursor> instanceCache )
public TxAbstractRelationshipCursor( TransactionState state, Consumer<TxAbstractRelationshipCursor> instanceCache )
{
this.state = state;
this.instanceCache = instanceCache;
Expand Down Expand Up @@ -136,7 +134,6 @@ public Cursor<PropertyItem> property( int propertyKeyId )
{
return state.augmentSinglePropertyCursor(
relationshipIsAddedInThisTx ? Cursors.<PropertyItem>empty() : cursor.get().property( propertyKeyId ),
relationshipState,
propertyKeyId );
relationshipState, propertyKeyId );
}
}
Expand Up @@ -23,6 +23,7 @@
import java.util.IdentityHashMap;
import java.util.Iterator;
import java.util.Set;

import org.neo4j.collection.primitive.Primitive;
import org.neo4j.collection.primitive.PrimitiveIntCollections;
import org.neo4j.collection.primitive.PrimitiveIntIterator;
Expand Down Expand Up @@ -139,16 +140,6 @@ public RelationshipIterator augmentRelationships( Direction direction, int[] typ
return rels;
}

@Override
public RelationshipIterator addedRelationships( Direction direction, int[] types )
{
if ( hasAddedRelationships() )
{
return relationshipsAdded.augmentRelationships( direction, types, RelationshipIterator.EMPTY );
}
return null;
}

@Override
public int augmentDegree( Direction direction, int degree )
{
Expand Down Expand Up @@ -347,11 +338,6 @@ public RelationshipIterator augmentRelationships( Direction direction, int[] typ
return rels;
}

@Override
public PrimitiveLongIterator addedRelationships( Direction direction, int[] types )
{
return Primitive.iterator();
}

@Override
public int augmentDegree( Direction direction, int degree )
Expand Down

0 comments on commit d54db9c

Please sign in to comment.