コード例 #1
0
ファイル: CoalesceTest.cs プロジェクト: georgeycliu/k-core
        public void CoalesceWithPath()
        {
            using (GraphViewCommand command = new GraphViewCommand(graphConnection))
            {
                command.OutputFormat = OutputFormat.GraphSON;
                GraphTraversal2 traversal = command.g().V()
                                            .Coalesce(
                    GraphTraversal2.__().OutE("knows"),
                    GraphTraversal2.__().OutE("created"))
                                            .OtherV()
                                            .Path()
                                            .By("name")
                                            .By("label");

                dynamic results = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

                List <string> expect = new List <string>
                {
                    string.Join(",", new [] { "marko", "knows", "vadas" }),
                    string.Join(",", new [] { "marko", "knows", "josh" }),
                    string.Join(",", new [] { "josh", "created", "ripple" }),
                    string.Join(",", new [] { "josh", "created", "lop" }),
                    string.Join(",", new [] { "peter", "created", "lop" }),
                };
                List <string> ans = new List <string>();
                foreach (dynamic result in results)
                {
                    ans.Add(string.Join(",", ((JArray)result["objects"]).Select(p => p.ToString()).ToList()));
                }
                CheckOrderedResults(expect, ans);
            }
        }
コード例 #2
0
        public void get_g_VX1X_outXcreatedX_inXcreatedX_cyclicPath_path()
        {
            using (GraphViewCommand command = new GraphViewCommand(graphConnection))
            {
                command.OutputFormat = OutputFormat.GraphSON;
                string          markoId   = this.ConvertToVertexId(command, "marko");
                GraphTraversal2 traversal = command.g().V(markoId).Out("created").In("created").CyclicPath().Path();
                dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

                List <string> ans = new List <string>();
                foreach (dynamic result in results)
                {
                    Console.WriteLine(result);
                    List <string> steps = new List <string>();
                    foreach (dynamic step in result["objects"])
                    {
                        steps.Add(step["id"].ToString());
                    }
                    ans.Add(string.Join(",", steps));
                }

                string lopId = this.ConvertToVertexId(command, "lop");

                List <string> path1 = new List <string> {
                    markoId, lopId, markoId
                };
                List <string> expect = new List <string>
                {
                    string.Join(",", path1)
                };
                CheckUnOrderedResults(expect, ans);
            }
        }
コード例 #3
0
        public void get_g_addVXanimalX_propertyXname_mateoX_propertyXname_gateoX_propertyXname_cateoX_propertyXage_5X()
        {
            using (GraphViewCommand command = new GraphViewCommand(graphConnection))
            {
                command.OutputFormat = OutputFormat.GraphSON;
                GraphTraversal2 traversal = command.g().AddV("animal").Property("name", "mateo").Property("name", "gateo").Property("name", "cateo").Property("age", 5);
                dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

                Assert.AreEqual("animal", results[0][GremlinKeyword.Label].ToString());

                List <string> ansProperties = new List <string>();
                foreach (dynamic property in results[0]["properties"]["name"])
                {
                    ansProperties.Add(property["value"].ToString());
                }
                List <string> expectProperties = new List <string> {
                    "mateo", "gateo", "cateo"
                };
                CheckUnOrderedResults(expectProperties, ansProperties);

                command.OutputFormat = OutputFormat.Regular;
                Assert.AreEqual(3, command.g().V().HasLabel("animal").Properties("name").Next().Count);
                Assert.AreEqual(5, int.Parse(command.g().V().HasLabel("animal").Values("age").Next().First()));
            }
        }
コード例 #4
0
        public void get_g_V_asXvX_mapXbothE_weight_foldX_sumXlocalX_asXsX_selectXv_sX_order_byXselectXsX_decrX()
        {
            using (GraphViewCommand command = new GraphViewCommand(graphConnection))
            {
                command.OutputFormat = OutputFormat.GraphSON;
                GraphTraversal2 traversal = command.g().V().As("v").Map(GraphTraversal2.__().BothE().Values("weight").Fold()).Sum(GremlinKeyword.Scope.Local).As("s").Select("v", "s").Order().By(GraphTraversal2.__().Select("s"), GremlinKeyword.Order.Decr);
                dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

                Assert.AreEqual(this.ConvertToVertexId(command, "josh"), results[0]["v"]["id"].ToString());
                Assert.AreEqual(2.4, double.Parse(results[0]["s"].ToString()));

                Assert.AreEqual(this.ConvertToVertexId(command, "marko"), results[1]["v"]["id"].ToString());
                Assert.AreEqual(1.9, double.Parse(results[1]["s"].ToString()));

                Assert.AreEqual(this.ConvertToVertexId(command, "lop"), results[2]["v"]["id"].ToString());
                Assert.AreEqual(1.0, double.Parse(results[2]["s"].ToString()));

                Assert.AreEqual(this.ConvertToVertexId(command, "ripple"), results[3]["v"]["id"].ToString());
                Assert.AreEqual(1.0, double.Parse(results[3]["s"].ToString()));

                Assert.AreEqual(this.ConvertToVertexId(command, "vadas"), results[4]["v"]["id"].ToString());
                Assert.AreEqual(0.5, double.Parse(results[4]["s"].ToString()));

                Assert.AreEqual(this.ConvertToVertexId(command, "peter"), results[5]["v"]["id"].ToString());
                Assert.AreEqual(0.2, double.Parse(results[5]["s"].ToString()));
            }
        }
コード例 #5
0
ファイル: WhereTest.cs プロジェクト: georgeycliu/k-core
        public void HasVertexIdRepeatBothECreatedWhereWithoutEAggregateEOtherVEmitPath()
        {
            //==>[v[1], e[9][1 - created->3], v[3]]
            //==>[v[1], e[9][1 - created->3], v[3], e[11][4 - created->3], v[4]]
            //==>[v[1], e[9][1 - created->3], v[3], e[12][6 - created->3], v[6]]
            //==>[v[1], e[9][1 - created->3], v[3], e[11][4 - created->3], v[4], e[10][4 - created->5], v[5]]
            using (GraphViewCommand graphCommand = new GraphViewCommand(graphConnection))
            {
                string markoVertexId = this.ConvertToVertexId(graphCommand, "marko");

                graphCommand.OutputFormat = OutputFormat.Regular;

                GraphTraversal2 traversal = graphCommand.g().V().HasId(markoVertexId)
                                            .Repeat(GraphTraversal2.__().BothE("created")
                                                    .Where(Predicate.without("e"))
                                                    .Aggregate("e")
                                                    .OtherV())
                                            .Emit().Path();

                List <string> result = traversal.Next();

                dynamic dynamicResult = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

                //No idea how to evaluate the results.
            }
        }
コード例 #6
0
ファイル: OptionalTest.cs プロジェクト: georgeycliu/k-core
        public void get_g_V_hasLabelXpersonX_optionalXoutXknowsX_optionalXoutXcreatedXXX_path()
        {
            using (GraphViewCommand command = new GraphViewCommand(graphConnection))
            {
                command.OutputFormat = OutputFormat.GraphSON;
                GraphTraversal2 traversal = command.g().V().HasLabel("person").Optional(GraphTraversal2.__().Out("knows").Optional(GraphTraversal2.__().Out("created"))).Path();
                dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

                List <string> ans = new List <string>();
                foreach (dynamic result in results)
                {
                    Console.WriteLine(result);
                    List <string> steps = new List <string>();
                    foreach (dynamic step in result["objects"])
                    {
                        steps.Add(step["id"].ToString());
                    }
                    ans.Add(string.Join(",", steps));
                }

                string markoId  = this.ConvertToVertexId(command, "marko");
                string lopId    = this.ConvertToVertexId(command, "lop");
                string vadasId  = this.ConvertToVertexId(command, "vadas");
                string joshId   = this.ConvertToVertexId(command, "josh");
                string rippleId = this.ConvertToVertexId(command, "ripple");
                string peterId  = this.ConvertToVertexId(command, "peter");

                List <string> path1 = new List <string> {
                    markoId, vadasId
                };
                List <string> path2 = new List <string> {
                    markoId, joshId, rippleId
                };
                List <string> path3 = new List <string> {
                    markoId, joshId, lopId
                };
                List <string> path4 = new List <string> {
                    vadasId
                };
                List <string> path5 = new List <string> {
                    joshId
                };
                List <string> path6 = new List <string> {
                    peterId
                };
                List <string> expect = new List <string>
                {
                    string.Join(",", path1),
                    string.Join(",", path2),
                    string.Join(",", path3),
                    string.Join(",", path4),
                    string.Join(",", path5),
                    string.Join(",", path6),
                };
                CheckUnOrderedResults(expect, ans);
            }
        }
コード例 #7
0
 public void get_g_withSideEffectXa_testX_V_hasLabelXsoftwareX_propertyXtemp_selectXaXX_valueMapXname_tempX()
 {
     using (GraphViewCommand command = new GraphViewCommand(graphConnection))
     {
         command.OutputFormat = OutputFormat.GraphSON;
         GraphTraversal2 traversal = command.g().V();
         dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
     }
 }
コード例 #8
0
 public void get_g_V_groupXaX_byXname_substring_1X_byXconstantX1XX_capXaX()
 {
     using (GraphViewCommand command = new GraphViewCommand(graphConnection))
     {
         command.OutputFormat = OutputFormat.GraphSON;
         GraphTraversal2 traversal = command.g().V();
         dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
     }
 }
コード例 #9
0
        public void get_g_V_out_aggregateXaX_path()
        {
            using (GraphViewCommand command = new GraphViewCommand(graphConnection)) {
                command.OutputFormat = OutputFormat.GraphSON;
                GraphTraversal2 traversal = command.g().V().Out().Aggregate("a").Path();
                dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

                string markoId  = this.ConvertToVertexId(command, "marko");
                string lopId    = this.ConvertToVertexId(command, "lop");
                string vadasId  = this.ConvertToVertexId(command, "vadas");
                string joshId   = this.ConvertToVertexId(command, "josh");
                string rippleId = this.ConvertToVertexId(command, "ripple");
                string peterId  = this.ConvertToVertexId(command, "peter");

                List <string> path1 = new List <string> {
                    markoId, lopId
                };
                List <string> path2 = new List <string> {
                    markoId, vadasId
                };
                List <string> path3 = new List <string> {
                    markoId, joshId
                };
                List <string> path4 = new List <string> {
                    joshId, rippleId
                };
                List <string> path5 = new List <string> {
                    joshId, lopId
                };
                List <string> path6 = new List <string> {
                    peterId, lopId
                };

                List <string> expect = new List <string>
                {
                    string.Join(",", path1),
                    string.Join(",", path2),
                    string.Join(",", path3),
                    string.Join(",", path4),
                    string.Join(",", path5),
                    string.Join(",", path6),
                };

                List <string> ans = new List <string>();
                foreach (dynamic result in results)
                {
                    List <string> steps = new List <string>();
                    foreach (dynamic step in result["objects"])
                    {
                        steps.Add(step["id"].ToString());
                    }
                    ans.Add(string.Join(",", steps));
                }

                CheckUnOrderedResults(expect, ans);
            }
        }
コード例 #10
0
 public void get_g_V_hasXname_markoX_propertyXfriendWeight_outEXknowsX_weight_sum__acl_privateX()
 {
     using (GraphViewCommand command = new GraphViewCommand(graphConnection))
     {
         command.OutputFormat = OutputFormat.GraphSON;
         GraphTraversal2 traversal = command.g().V().Has("name", "marko").Property("friendWeight", GraphTraversal2.__().OutE("knows").Values("weight").Sum(), "acl", "private");
         dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
     }
 }
コード例 #11
0
 public void get_g_withSideEffectXa_markoX_addV_propertyXname_selectXaXX_name()
 {
     using (GraphViewCommand command = new GraphViewCommand(graphConnection))
     {
         command.OutputFormat = OutputFormat.GraphSON;
         GraphTraversal2 traversal = command.g().V();
         dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
     }
 }
コード例 #12
0
ファイル: OptionalTest.cs プロジェクト: georgeycliu/k-core
 public void get_g_VX2X_optionalXoutXknowsXX()
 {
     using (GraphViewCommand command = new GraphViewCommand(graphConnection)) {
         command.OutputFormat = OutputFormat.GraphSON;
         string          vadasId   = this.ConvertToVertexId(command, "vadas");
         GraphTraversal2 traversal = command.g().V(vadasId).Optional(GraphTraversal2.__().Out("know"));
         dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
         Assert.AreEqual(vadasId, results[0]["id"].ToString());
     }
 }
コード例 #13
0
 public void get_g_V_aggregateXxX_byXnameX_capXxX()
 {
     using (GraphViewCommand command = new GraphViewCommand(graphConnection))
     {
         command.OutputFormat = OutputFormat.GraphSON;
         GraphTraversal2 traversal = command.g().V().Aggregate("x").By("name").Cap("x");
         dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
         CheckUnOrderedResults(new[] { "marko", "vadas", "lop", "josh", "ripple", "peter" }, ((JArray)results[0]).Select(p => p.ToString()).ToList());
     }
 }
コード例 #14
0
 public void get_g_VX1X_addVXanimalX_propertyXage_selectXaX_byXageXX_propertyXname_puppyX()
 {
     using (GraphViewCommand command = new GraphViewCommand(graphConnection))
     {
         command.OutputFormat = OutputFormat.GraphSON;
         string          markoId   = this.ConvertToVertexId(command, "marko");
         GraphTraversal2 traversal = command.g().V(markoId).As("a").AddV("animal").Property("age", GraphTraversal2.__().Select("a").By("age")).Property("name", "puppy");
         dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
     }
 }
コード例 #15
0
 /// <summary>
 /// get_g_V_groupXmX_byXnameX_byXinXknowsX_nameX_capXmX()
 /// from org/apache/tinkerpop/gremlin/process/traversal/step/map/GroupTest.java
 /// Gremlin: g.V().group("m").by("name").by(__.in("knows").values("name")).cap("m");
 /// </summary>
 public void get_g_V_groupXmX_byXnameX_byXinXknowsX_nameX_capXmX()
 {
     using (GraphViewCommand command = new GraphViewCommand(graphConnection))
     {
         command.OutputFormat = OutputFormat.GraphSON;
         GraphTraversal2 traversal = command.g().V();
         dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
         //Can't get any results in gremlin console
     }
 }
コード例 #16
0
 public void get_g_V_hasLabelXsongX_groupXaX_byXnameX_byXproperties_groupCount_byXlabelXX_out_capXaX()
 {
     using (GraphViewCommand command = new GraphViewCommand(graphConnection))
     {
         command.OutputFormat = OutputFormat.GraphSON;
         GraphTraversal2 traversal = command.g().V();
         dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
         //Use GRATEFUL test data
     }
 }
コード例 #17
0
 public void get_g_V_outXfollowedByX_group_byXsongTypeX_byXbothE_group_byXlabelX_byXweight_sumXX()
 {
     using (GraphViewCommand command = new GraphViewCommand(graphConnection))
     {
         command.OutputFormat = OutputFormat.GraphSON;
         GraphTraversal2 traversal = command.g().V();
         dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
         //use GRATEFUL test data
     }
 }
コード例 #18
0
 public void get_g_V_repeatXbothXfollowedByXX_timesX2X_groupXaX_byXsongTypeX_byXcountX_capXaX()
 {
     using (GraphViewCommand command = new GraphViewCommand(graphConnection))
     {
         command.OutputFormat = OutputFormat.GraphSON;
         GraphTraversal2 traversal = command.g().V();
         dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
         //Use GRATEFUL test data
     }
 }
コード例 #19
0
ファイル: SumTest.cs プロジェクト: georgeycliu/k-core
 public void get_g_V_hasLabelXsoftwareX_group_byXnameX_byXbothE_weight_sumX()
 {
     using (GraphViewCommand command = new GraphViewCommand(graphConnection))
     {
         command.OutputFormat = OutputFormat.GraphSON;
         GraphTraversal2 traversal = command.g().V().HasLabel("software").Group().By("name").By(GraphTraversal2.__().BothE().Values("weight").Sum());
         dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
         Assert.IsTrue(1.0 == double.Parse(results[0]["ripple"].ToString()) && 1.0 == double.Parse(results[0]["lop"].ToString()));
     }
 }
コード例 #20
0
        public void g_VX1X_outXcreatedX_inXcreatedX_cyclicPath()
        {
            using (GraphViewCommand command = new GraphViewCommand(graphConnection)) {
                command.OutputFormat = OutputFormat.GraphSON;
                string          markoId   = this.ConvertToVertexId(command, "marko");
                GraphTraversal2 traversal = command.g().V(markoId).Out("created").In("created").CyclicPath();
                dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

                Assert.AreEqual(markoId, results[0]["id"].ToString());
            }
        }
コード例 #21
0
 public void get_g_V_hasLabelXpersonX_aggregateXxX_byXageX_capXxX_asXyX_selectXyX()
 {
     using (GraphViewCommand command = new GraphViewCommand(graphConnection))
     {
         command.OutputFormat = OutputFormat.GraphSON;
         GraphTraversal2 traversal =
             command.g().V().HasLabel("person").Aggregate("x").By("age").Cap("x").As("y").Select("y");
         dynamic results = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
         CheckUnOrderedResults(new [] { 29, 27, 32, 35 }, ((JArray)results[0]).Select(p => int.Parse(p.ToString())).ToList());
     }
 }
コード例 #22
0
ファイル: ValueMapTest.cs プロジェクト: georgeycliu/k-core
 public void get_g_VX1X_outXcreatedX_valueMap()
 {
     using (GraphViewCommand command = new GraphViewCommand(graphConnection))
     {
         command.OutputFormat = OutputFormat.GraphSON;
         string          markoId   = this.ConvertToVertexId(command, "marko");
         GraphTraversal2 traversal = command.g().V(markoId).Out("created").ValueMap();
         dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
         Assert.IsTrue("lop" == results[0]["name"][0].ToString() && "java" == results[0]["lang"][0].ToString());
     }
 }
コード例 #23
0
ファイル: GroupCountTest.cs プロジェクト: georgeycliu/k-core
        public void get_g_V_unionXrepeatXoutX_timesX2X_groupCountXmX_byXlangXX__repeatXinX_timesX2X_groupCountXmX_byXnameXX_capXmX()
        {
            using (GraphViewCommand command = new GraphViewCommand(graphConnection))
            {
                command.OutputFormat = OutputFormat.GraphSON;
                GraphTraversal2 traversal = command.g().V().Union(GraphTraversal2.__().Repeat(GraphTraversal2.__().Out()).Times(2).GroupCount("m").By("lang"), GraphTraversal2.__().Repeat(GraphTraversal2.__().In()).Times(2).GroupCount("m").By("name")).Cap("m");
                dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

                Assert.AreEqual(2, int.Parse(results[0]["java"].ToString()));
                Assert.AreEqual(2, int.Parse(results[0]["marko"].ToString()));
            }
        }
コード例 #24
0
        public void get_g_V_hasXlangX_group_byXlangX_byXcountX()
        {
            using (GraphViewCommand command = new GraphViewCommand(graphConnection))
            {
                command.OutputFormat = OutputFormat.GraphSON;
                GraphTraversal2 traversal = command.g().V().Has("lang").Group().By("lang").By(GraphTraversal2.__().Count());
                dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

                Assert.AreEqual(1, results.Count);
                Assert.AreEqual(2, int.Parse(results[0]["java"].ToString()));
            }
        }
コード例 #25
0
        public void get_g_V_hasXlangX_groupXaX_byXlangX_byXnameX_out_capXaX()
        {
            using (GraphViewCommand command = new GraphViewCommand(graphConnection))
            {
                command.OutputFormat = OutputFormat.GraphSON;
                GraphTraversal2 traversal = command.g().V().Has("lang").Group("a").By("lang").By("name").Out().Cap("a");
                dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

                Assert.AreEqual(1, results.Count);
                CheckUnOrderedResults(new [] { "lop", "ripple" }, ((JArray)results[0]["java"]).Select(p => p.ToString()).ToList());
            }
        }
コード例 #26
0
        private void AssertCommonA(GraphViewCommand command, GraphTraversal2 traversal)
        {
            dynamic results = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

            Assert.AreEqual(1, results.Count);
            Assert.AreEqual(this.ConvertToVertexId(command, "ripple"), results[0]["ripple"][0]["id"].ToString());
            Assert.AreEqual(this.ConvertToVertexId(command, "peter"), results[0]["peter"][0]["id"].ToString());
            Assert.AreEqual(this.ConvertToVertexId(command, "vadas"), results[0]["vadas"][0]["id"].ToString());
            Assert.AreEqual(this.ConvertToVertexId(command, "josh"), results[0]["josh"][0]["id"].ToString());
            Assert.AreEqual(this.ConvertToVertexId(command, "lop"), results[0]["lop"][0]["id"].ToString());
            Assert.AreEqual(this.ConvertToVertexId(command, "marko"), results[0]["marko"][0]["id"].ToString());
        }
コード例 #27
0
        public void g_V_group_byXlabelX_byXbothE_weight_fold_sampleXlocal_5XX()
        {
            using (GraphViewCommand graphCommand = new GraphViewCommand(graphConnection))
            {
                graphCommand.OutputFormat = OutputFormat.GraphSON;
                GraphTraversal2 traversal = graphCommand.g().V().Group().By("label").By(GraphTraversal2.__().BothE().Values("weight").Fold().Sample(GremlinKeyword.Scope.Local, 5));

                dynamic result = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());
                Assert.AreEqual(4, result[0]["software"].Count);
                Assert.AreEqual(5, result[0]["person"].Count);
            }
        }
コード例 #28
0
ファイル: GroupCountTest.cs プロジェクト: georgeycliu/k-core
        public void get_g_V_outXcreatedX_name_groupCountXaX_capXaX()
        {
            using (GraphViewCommand command = new GraphViewCommand(graphConnection))
            {
                command.OutputFormat = OutputFormat.GraphSON;
                GraphTraversal2 traversal = command.g().V().Out("created").Values("name").GroupCount("a").Cap("a");
                dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

                Assert.AreEqual(1, int.Parse(results[0]["ripple"].ToString()));
                Assert.AreEqual(3, int.Parse(results[0]["lop"].ToString()));
            }
        }
コード例 #29
0
ファイル: GroupCountTest.cs プロジェクト: georgeycliu/k-core
        public void get_g_V_groupCount_byXbothE_countX()
        {
            using (GraphViewCommand command = new GraphViewCommand(graphConnection))
            {
                command.OutputFormat = OutputFormat.GraphSON;
                GraphTraversal2 traversal = command.g().V().GroupCount().By(GraphTraversal2.__().BothE().Count());
                dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

                Assert.AreEqual(3, int.Parse(results[0]["1"].ToString()));
                Assert.AreEqual(3, int.Parse(results[0]["3"].ToString()));
            }
        }
コード例 #30
0
        public void VerticesLabelGroupCountAsXSelectX()
        {
            using (GraphViewCommand command = new GraphViewCommand(graphConnection))
            {
                command.OutputFormat = OutputFormat.GraphSON;
                GraphTraversal2 traversal = command.g().V().Label().GroupCount().As("x").Select("x");
                dynamic         results   = JsonConvert.DeserializeObject <dynamic>(traversal.FirstOrDefault());

                Assert.AreEqual(2, int.Parse(results[0]["software"].ToString()));
                Assert.AreEqual(4, int.Parse(results[0]["person"].ToString()));
            }
        }