package com.tinkerpop.gremlin.java.sideeffect; import com.tinkerpop.blueprints.Graph; import com.tinkerpop.blueprints.Vertex; import com.tinkerpop.blueprints.impls.tg.TinkerGraphFactory; import com.tinkerpop.gremlin.java.GremlinPipeline; import com.tinkerpop.gremlin.test.ComplianceTest; import com.tinkerpop.pipes.PipeFunction; import com.tinkerpop.pipes.util.structures.Pair; import java.util.HashMap; import java.util.Map; /** * @author Marko A. Rodriguez (http://markorodriguez.com) */ public class GroupCountStepTest extends com.tinkerpop.gremlin.test.sideeffect.GroupCountStepTest { Graph g = TinkerGraphFactory.createTinkerGraph(); public void testCompliance() { ComplianceTest.testCompliance(this.getClass()); } public void test_g_V_outXcreatedX_groupCountXm__nameX() { Map<String, Number> m = new HashMap<String, Number>(); super.test_g_V_outXcreatedX_groupCountXm__nameX(new GremlinPipeline(g.getVertices()).out("created").groupCount(m, new PipeFunction<Vertex, String>() { public String compute(Vertex vertex) { return (String) vertex.getProperty("name"); } }), m); m = new HashMap<String, Number>(); super.test_g_V_outXcreatedX_groupCountXm__nameX(new GremlinPipeline(g).optimize(false).V().out("created").groupCount(m, new PipeFunction<Vertex, String>() { public String compute(Vertex vertex) { return (String) vertex.getProperty("name"); } }), m); } public void test_g_V_outXcreatedX_groupCountXm__name__plus_2X() { Map<String, Number> m = new HashMap<String, Number>(); super.test_g_V_outXcreatedX_groupCountXm__name__plus_2X(new GremlinPipeline(g).V().out("created").groupCount(m, new PipeFunction<Vertex, String>() { public String compute(Vertex vertex) { return (String) vertex.getProperty("name"); } }, new PipeFunction<Pair<?, Number>, Number>() { public Number compute(Pair<?, Number> arg) { return arg.getB().longValue() + 2l; } } ), m); m = new HashMap<String, Number>(); super.test_g_V_outXcreatedX_groupCountXm__name__plus_2X(new GremlinPipeline(g.getVertices()).optimize(false).out("created").groupCount(m, new PipeFunction<Vertex, String>() { public String compute(Vertex vertex) { return (String) vertex.getProperty("name"); } }, new PipeFunction<Pair<?, Number>, Number>() { public Number compute(Pair<?, Number> arg) { return arg.getB().longValue() + 2l; } } ), m); } public void test_g_V_outXcreatedX_groupCountXnameX_cap() { super.test_g_V_outXcreatedX_groupCountXnameX_cap(new GremlinPipeline(g.getVertices()).out("created").groupCount(new PipeFunction<Vertex, String>() { public String compute(Vertex vertex) { return (String) vertex.getProperty("name"); } }).cap()); super.test_g_V_outXcreatedX_groupCountXnameX_cap(new GremlinPipeline(g).optimize(false).V().out("created").groupCount(new PipeFunction<Vertex, String>() { public String compute(Vertex vertex) { return (String) vertex.getProperty("name"); } }).cap()); } }