public static <S> Set<S> set(final Iterator<S> iterator) { return fill(iterator, new HashSet<>()); }
public static <S> List<S> list(final Iterator<S> iterator) { return fill(iterator, new ArrayList<>()); }
@Test @FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, feature = Graph.Features.VertexFeatures.FEATURE_ADD_VERTICES) @FeatureRequirement(featureClass = Graph.Features.EdgeFeatures.class, feature = Graph.Features.EdgeFeatures.FEATURE_ADD_EDGES) @FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, feature = Graph.Features.VertexFeatures.FEATURE_ADD_PROPERTY) @FeatureRequirement(featureClass = Graph.Features.VertexPropertyFeatures.class, feature = FEATURE_INTEGER_VALUES) @FeatureRequirement(featureClass = Graph.Features.EdgeFeatures.class, feature = Graph.Features.EdgeFeatures.FEATURE_ADD_PROPERTY) @FeatureRequirement(featureClass = Graph.Features.EdgePropertyFeatures.class, feature = FEATURE_INTEGER_VALUES) @FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, feature = Graph.Features.VertexFeatures.FEATURE_REMOVE_VERTICES) public void shouldNotGetConcurrentModificationException() { for (int i = 0; i < 25; i++) { graph.addVertex("myId", i); } graph.vertices().forEachRemaining(v -> graph.vertices().forEachRemaining(u -> v.addEdge("knows", u, "myEdgeId", 12))); tryCommit(graph, getAssertVertexEdgeCounts(25, 625)); final List<Vertex> vertices = new ArrayList<>(); IteratorUtils.fill(graph.vertices(), vertices); for (Vertex v : vertices) { v.remove(); tryCommit(graph); } tryCommit(graph, getAssertVertexEdgeCounts(0, 0)); }
public static <S> List<S> list(final Iterator<S> iterator) { return fill(iterator, new ArrayList<>()); }
public static <S> Set<S> set(final Iterator<S> iterator) { return fill(iterator, new HashSet<>()); }
@Test @FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, feature = Graph.Features.VertexFeatures.FEATURE_ADD_VERTICES) @FeatureRequirement(featureClass = Graph.Features.EdgeFeatures.class, feature = Graph.Features.EdgeFeatures.FEATURE_ADD_EDGES) @FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, feature = Graph.Features.VertexFeatures.FEATURE_ADD_PROPERTY) @FeatureRequirement(featureClass = Graph.Features.VertexPropertyFeatures.class, feature = FEATURE_INTEGER_VALUES) @FeatureRequirement(featureClass = Graph.Features.EdgeFeatures.class, feature = Graph.Features.EdgeFeatures.FEATURE_ADD_PROPERTY) @FeatureRequirement(featureClass = Graph.Features.EdgePropertyFeatures.class, feature = FEATURE_INTEGER_VALUES) @FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, feature = Graph.Features.VertexFeatures.FEATURE_REMOVE_VERTICES) public void shouldNotGetConcurrentModificationException() { for (int i = 0; i < 25; i++) { graph.addVertex("myId", i); } graph.vertices().forEachRemaining(v -> graph.vertices().forEachRemaining(u -> v.addEdge("knows", u, "myEdgeId", 12))); tryCommit(graph, getAssertVertexEdgeCounts(25, 625)); final List<Vertex> vertices = new ArrayList<>(); IteratorUtils.fill(graph.vertices(), vertices); for (Vertex v : vertices) { v.remove(); tryCommit(graph); } tryCommit(graph, getAssertVertexEdgeCounts(0, 0)); }