### Question:
OperationPipeline implements OperationList { public OperationPipeline() { } OperationPipeline(); @Override Operation getTailOperation(); @Override void add(Operation op); @Override OperationIterator iterator();  }### Answer:
@Test public void testOperationPipeline() { OperationPipeline operationPipeline = new OperationPipeline(); operationPipeline .add(new GetEntityByProperty(ATTR_PERSON_DISPLAY_NAME, "John")); operationPipeline.add(new SelectEntities(REL_CUSTOMER, Queries.GraphTraversal.Direction.OUT)); operationPipeline.add(new SelectRelationships(REL_CITY, Queries.GraphTraversal.Direction.IN)); operationPipeline.add(new GraphTerminalOperation()); OperationIterator vIterator = operationPipeline.iterator(); assertTrue(vIterator.hasNext()); assertTrue(vIterator.next() instanceof GetEntityByProperty); assertTrue(vIterator.next() instanceof SelectEntities); assertTrue(vIterator.next() instanceof SelectRelationships); assertTrue(vIterator.next() instanceof GraphTerminalOperation); }