DirectedSparseGraph.findEdgeSet(v1, v2) overrides the behavior of AbstractGraph and returns null instead of throwing exceptions when the vertices are not found.
DirectedSparseMultigraph does not override the method from AbstractGraph.
When I switched from a regular graph to a multigraph, I was surprised to see that this behavior changed.