예제 #1
0
        public void Test17()
        {
            // long range traverse capability test
            var path = KnowledgeGraph.StartFrom(0);

            for (int hop = 1; hop <= 20; ++hop)
            {
                path = path.VisitNode(FanoutSearch.Action.Continue);
            }

            path = path.VisitNode(FanoutSearch.Action.Return);

            path.ToList();
        }
예제 #2
0
        public void Test18()
        {
            try
            {
                KnowledgeGraph.StartFrom(0).VisitNode(_ => _.Do(() => Console.WriteLine("Hey")) & Action.Return).ToList();
            }
            catch (FanoutSearchQueryException ex)
            {
                Assert.IsTrue(ex.Message.Contains("Referencing a type not allowed") && ex.Message.Contains("Console"));
                return;
            }

            Assert.Fail();
        }
예제 #3
0
        IEnumerable <PathDescriptor> DoQuery(long origin, string property, int property_count_lowerbound)
        {
            Func <int> func = () => property_count_lowerbound;

            return(KnowledgeGraph
                   .StartFrom(origin)
                   .FollowEdge("people_person_profession")
                   .FollowEdge("people_profession_people_with_this_profession")
                   //.VisitNode(_ => _.return_if(_.count(property) > func()), select: new List<string> { "type_object_name" });
                   .VisitNode(_ => _.return_if(_.count(property) > property_count_lowerbound), select: new List <string> {
                "type_object_name"
            }));
            //.VisitNode(_ => _.return_if(_.count(property) > Environment.ProcessorCount), select: new List<string> { "type_object_name" });
        }
예제 #4
0
        public void Test6()
        {
            Func <int, bool> func = cnt => cnt > 3;

            try
            {
                var paths = KnowledgeGraph.StartFrom(123).VisitNode(_ => _.return_if(func(_.count("prop")))).ToList();
            }
            catch
            {
                Console.WriteLine("Test6 throws expected exception.");
                /* Expected to throw exception due to entangled lambda expressions and non-evaluatable parts. */
            }
        }
예제 #5
0
        public void Test20()
        {
            try
            {
                KnowledgeGraph.StartFrom(0).VisitNode(_ => _.Do(() => _.SetField("foo", "bar")) & Action.Return).ToList();
            }
            catch (FanoutSearchQueryException ex)
            {
                Assert.True(ex.Message.Contains("Syntax error") && ex.Message.Contains("SetField"));
                return;
            }

            throw new Exception();
        }
예제 #6
0
        public void Test19()
        {
            try
            {
                KnowledgeGraph.StartFrom(0).VisitNode(_ => _.Do(() => Global.LocalStorage.ResetStorage()) & Action.Return).ToList();
            }
            catch (FanoutSearchQueryException ex)
            {
                Assert.IsTrue(ex.Message.Contains("Referencing a type not allowed") && ex.Message.Contains("LocalMemoryStorage"));
                return;
            }

            Assert.Fail();
        }
예제 #7
0
        public void Test15()
        {
            Global.LocalStorage.SaveMyCell(1, edges: new List <long> {
                2
            }, f1: 10);
            Global.LocalStorage.SaveMyCell(2, edges: new List <long> {
                1
            }, f1: 10);
            // conversion from float to decimal throws InvalidCastException.
            var paths = KnowledgeGraph
                        .StartFrom(1)
                        .VisitNode(_ => _.return_if(_.GetField <List <decimal> >("f1").Any(x => x > 0.1m))).ToList();

            Assert.True(paths.Count == 0);
        }
        private void AssertKnowledgegraphsAreEqual(KnowledgeGraph expectedKnGraph, KnowledgeGraph actualKnGraph)
        {
            Assert.AreEqual(expectedKnGraph.KnGraph.Count, actualKnGraph.KnGraph.Count);
            for (int index = 0; index < expectedKnGraph.KnGraph.Count; index++)
            {
                Assert.AreEqual(expectedKnGraph.KnGraph[index].Neighbors.Count, actualKnGraph.KnGraph[index].Neighbors.Count);

                if (expectedKnGraph.KnGraph[index].Neighbors.Count > 0)
                {
                    for (int index2 = 0; index2 < expectedKnGraph.KnGraph[index].Neighbors.Count; index2++)
                    {
                        Assert.AreEqual(expectedKnGraph.KnGraph[index].Neighbors[index2].Index, actualKnGraph.KnGraph[index].Neighbors[index2].Index);
                    }
                }
            }
        }
        public void ExtractKnGraphFromHtmlInputOnePageTest()
        {
            // expected graph
            KnowledgeGraph expectedKnGraph = new KnowledgeGraph();

            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(0, Utilities.OriginalGraphType.Unknown, "H2Title", "h2", new Uri("about:blank")));
            expectedKnGraph.KnGraph[0].Neighbors.Add(new KnowledgeGraphNode(1, Utilities.OriginalGraphType.Unknown, "H3Ttitle", "h3", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(1, Utilities.OriginalGraphType.Unknown, "H3Title", "h3", new Uri("about:blank")));
            expectedKnGraph.KnGraph[1].Neighbors.Add(new KnowledgeGraphNode(2, Utilities.OriginalGraphType.Unknown, "li-1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[1].Neighbors.Add(new KnowledgeGraphNode(3, Utilities.OriginalGraphType.Unknown, "li-2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[1].Neighbors.Add(new KnowledgeGraphNode(4, Utilities.OriginalGraphType.Unknown, "li-3", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[1].Neighbors.Add(new KnowledgeGraphNode(17, Utilities.OriginalGraphType.Unknown, "li-4", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[1].Neighbors.Add(new KnowledgeGraphNode(18, Utilities.OriginalGraphType.Unknown, "li-5", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(2, Utilities.OriginalGraphType.Unknown, "li-1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(3, Utilities.OriginalGraphType.Unknown, "li-2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(4, Utilities.OriginalGraphType.Unknown, "li-3", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[4].Neighbors.Add(new KnowledgeGraphNode(5, Utilities.OriginalGraphType.Unknown, "li-3.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[4].Neighbors.Add(new KnowledgeGraphNode(6, Utilities.OriginalGraphType.Unknown, "li-3.2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[4].Neighbors.Add(new KnowledgeGraphNode(7, Utilities.OriginalGraphType.Unknown, "li-3.3", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[4].Neighbors.Add(new KnowledgeGraphNode(8, Utilities.OriginalGraphType.Unknown, "li-3.4", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[4].Neighbors.Add(new KnowledgeGraphNode(11, Utilities.OriginalGraphType.Unknown, "li-3.5", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[4].Neighbors.Add(new KnowledgeGraphNode(12, Utilities.OriginalGraphType.Unknown, "li-3.6", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[4].Neighbors.Add(new KnowledgeGraphNode(16, Utilities.OriginalGraphType.Unknown, "li-3.7", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(5, Utilities.OriginalGraphType.Unknown, "li-3.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(6, Utilities.OriginalGraphType.Unknown, "li-3.2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(7, Utilities.OriginalGraphType.Unknown, "li-3.3", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(8, Utilities.OriginalGraphType.Unknown, "li-3.4", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[8].Neighbors.Add(new KnowledgeGraphNode(9, Utilities.OriginalGraphType.Unknown, "li-3.4.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[8].Neighbors.Add(new KnowledgeGraphNode(10, Utilities.OriginalGraphType.Unknown, "li-3.4.2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(9, Utilities.OriginalGraphType.Unknown, "li-3.4.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(10, Utilities.OriginalGraphType.Unknown, "li-3.4.2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(11, Utilities.OriginalGraphType.Unknown, "li-3.5", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(12, Utilities.OriginalGraphType.Unknown, "li-3.6", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[12].Neighbors.Add(new KnowledgeGraphNode(13, Utilities.OriginalGraphType.Unknown, "li-3.6.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(13, Utilities.OriginalGraphType.Unknown, "li-3.6.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[13].Neighbors.Add(new KnowledgeGraphNode(14, Utilities.OriginalGraphType.Unknown, "li-3.6.1.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[13].Neighbors.Add(new KnowledgeGraphNode(15, Utilities.OriginalGraphType.Unknown, "li-3.6.1.2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(14, Utilities.OriginalGraphType.Unknown, "li-3.6.1.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(15, Utilities.OriginalGraphType.Unknown, "li-3.6.1.2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(16, Utilities.OriginalGraphType.Unknown, "li-3.7", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(17, Utilities.OriginalGraphType.Unknown, "li-4", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(18, Utilities.OriginalGraphType.Unknown, "li-5", "li", new Uri("about:blank")));

            KnowledgeGraph actualKnGraph = WKGE.ExtractKnGraphFromHtmlFile(filePath: "./TestInputs/page1.html");

            AssertKnowledgegraphsAreEqual(expectedKnGraph, actualKnGraph);
        }
예제 #10
0
        static void Main(string[] args)
        {
            KnowledgeGraph knowledgeGraph = WKGE.ExtractKnGraphFromUris(WKGE.WikipediaPagesToParse);

            // Console.WriteLine(Utilities.FormatKnGraphIndexAndLabelsForPrinting(knowledgeGraph));
            // Console.WriteLine();

            // Console.WriteLine(Utilities.FormatKnGraphLabelsForPrinting(knowledgeGraph));
            // Console.WriteLine();

            // Console.WriteLine(Utilities.FormatKnGraphIndexesForPrinting(knowledgeGraph));

            // Utilities.DownloadAllPagesInKnGraph();

            Console.WriteLine("SaveDSWordCountsToJsonFile...");
            Utilities.SaveDSWordCountsToJsonFile(knowledgeGraph);
            Console.WriteLine("Done");

            Console.ReadKey();
        }
예제 #11
0
        static void Main()
        {
            // get the knowlege graph from all wikipedia Uris in WKGE
            KnowledgeGraph knowledgeGraph = WKGE.GetKnowledgeGraphFromWikipedia();

            //create a form
            System.Windows.Forms.Form form = new System.Windows.Forms.Form();
            //create a viewer object
            Microsoft.Msagl.GraphViewerGdi.GViewer viewer = new Microsoft.Msagl.GraphViewerGdi.GViewer();
            //create a graph object
            Graph graph = new Graph("graph");

            //add the graph content for list of algorithms
            for (int index = 0; index < knowledgeGraph.KnGraph.Count; index++)
            {
                KnowledgeGraphNode node = knowledgeGraph.KnGraph[index];

                // add node and set its color
                graph.AddNode(node.Label).Attr.FillColor = GraphNodeColors[node.OriginalGraphType][node.HtmlName];

                // add all neighbors as edges
                node.Neighbors.ForEach(neighbor =>
                                       graph.AddEdge(node.Label, knowledgeGraph.KnGraph[neighbor.Index].Label));
            }

            // use the MDS rendering method
            viewer.CurrentLayoutMethod = Microsoft.Msagl.GraphViewerGdi.LayoutMethod.MDS;

            //bind the graph to the viewer
            viewer.Graph = graph;
            //associate the viewer with the form
            form.SuspendLayout();
            viewer.Dock = System.Windows.Forms.DockStyle.Fill;
            form.Controls.Add(viewer);
            form.ResumeLayout();
            //show the form
            form.ShowDialog();
        }
예제 #12
0
 public void Test4()
 {
     var paths = KnowledgeGraph.StartFrom(123).VisitNode(_ => _.return_if(_.CellId == 123)).ToList();
 }
예제 #13
0
 public void Test1()
 {
     bool closure_var = true;
     var  paths       = KnowledgeGraph.StartFrom(123).FollowEdge("123").VisitNode(_ => _.return_if(closure_var)).ToList();
 }
        public void ExtractKnGraphFromHtmlInputThreePagesTest()
        {
            // html input files
            List <string> htmlFiles = new List <string>()
            {
                "./TestInputs/page1.html",
                "./TestInputs/page2.html",
                "./TestInputs/page3.html"
            };

            // expected graph
            KnowledgeGraph expectedKnGraph = new KnowledgeGraph();

            // graph from page 1
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(0, Utilities.OriginalGraphType.Unknown, "H2Title", "h2", new Uri("about:blank")));
            expectedKnGraph.KnGraph[0].Neighbors.Add(new KnowledgeGraphNode(1, Utilities.OriginalGraphType.Unknown, "H3Ttitle", "h3", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(1, Utilities.OriginalGraphType.Unknown, "H3Title", "h3", new Uri("about:blank")));
            expectedKnGraph.KnGraph[1].Neighbors.Add(new KnowledgeGraphNode(2, Utilities.OriginalGraphType.Unknown, "li-1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[1].Neighbors.Add(new KnowledgeGraphNode(3, Utilities.OriginalGraphType.Unknown, "li-2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[1].Neighbors.Add(new KnowledgeGraphNode(4, Utilities.OriginalGraphType.Unknown, "li-3", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[1].Neighbors.Add(new KnowledgeGraphNode(17, Utilities.OriginalGraphType.Unknown, "li-4", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[1].Neighbors.Add(new KnowledgeGraphNode(18, Utilities.OriginalGraphType.Unknown, "li-5", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(2, Utilities.OriginalGraphType.Unknown, "li-1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(3, Utilities.OriginalGraphType.Unknown, "li-2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(4, Utilities.OriginalGraphType.Unknown, "li-3", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[4].Neighbors.Add(new KnowledgeGraphNode(5, Utilities.OriginalGraphType.Unknown, "li-3.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[4].Neighbors.Add(new KnowledgeGraphNode(6, Utilities.OriginalGraphType.Unknown, "li-3.2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[4].Neighbors.Add(new KnowledgeGraphNode(7, Utilities.OriginalGraphType.Unknown, "li-3.3", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[4].Neighbors.Add(new KnowledgeGraphNode(8, Utilities.OriginalGraphType.Unknown, "li-3.4", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[4].Neighbors.Add(new KnowledgeGraphNode(11, Utilities.OriginalGraphType.Unknown, "li-3.5", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[4].Neighbors.Add(new KnowledgeGraphNode(12, Utilities.OriginalGraphType.Unknown, "li-3.6", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[4].Neighbors.Add(new KnowledgeGraphNode(16, Utilities.OriginalGraphType.Unknown, "li-3.7", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(5, Utilities.OriginalGraphType.Unknown, "li-3.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(6, Utilities.OriginalGraphType.Unknown, "li-3.2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(7, Utilities.OriginalGraphType.Unknown, "li-3.3", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(8, Utilities.OriginalGraphType.Unknown, "li-3.4", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[8].Neighbors.Add(new KnowledgeGraphNode(9, Utilities.OriginalGraphType.Unknown, "li-3.4.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[8].Neighbors.Add(new KnowledgeGraphNode(10, Utilities.OriginalGraphType.Unknown, "li-3.4.2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(9, Utilities.OriginalGraphType.Unknown, "li-3.4.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(10, Utilities.OriginalGraphType.Unknown, "li-3.4.2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(11, Utilities.OriginalGraphType.Unknown, "li-3.5", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(12, Utilities.OriginalGraphType.Unknown, "li-3.6", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[12].Neighbors.Add(new KnowledgeGraphNode(13, Utilities.OriginalGraphType.Unknown, "li-3.6.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(13, Utilities.OriginalGraphType.Unknown, "li-3.6.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[13].Neighbors.Add(new KnowledgeGraphNode(14, Utilities.OriginalGraphType.Unknown, "li-3.6.1.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[13].Neighbors.Add(new KnowledgeGraphNode(15, Utilities.OriginalGraphType.Unknown, "li-3.6.1.2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(14, Utilities.OriginalGraphType.Unknown, "li-3.6.1.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(15, Utilities.OriginalGraphType.Unknown, "li-3.6.1.2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(16, Utilities.OriginalGraphType.Unknown, "li-3.7", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(17, Utilities.OriginalGraphType.Unknown, "li-4", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(18, Utilities.OriginalGraphType.Unknown, "li-5", "li", new Uri("about:blank")));
            //graph from page 2
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(19, Utilities.OriginalGraphType.Unknown, "H2Title2", "h2", new Uri("about:blank")));
            expectedKnGraph.KnGraph[19].Neighbors.Add(new KnowledgeGraphNode(20, Utilities.OriginalGraphType.Unknown, "H3Title2", "h3", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(20, Utilities.OriginalGraphType.Unknown, "H3Title2", "h3", new Uri("about:blank")));
            expectedKnGraph.KnGraph[20].Neighbors.Add(new KnowledgeGraphNode(21, Utilities.OriginalGraphType.Unknown, "page2li-1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[20].Neighbors.Add(new KnowledgeGraphNode(22, Utilities.OriginalGraphType.Unknown, "page2li-2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[20].Neighbors.Add(new KnowledgeGraphNode(23, Utilities.OriginalGraphType.Unknown, "page2li-3", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[20].Neighbors.Add(new KnowledgeGraphNode(24, Utilities.OriginalGraphType.Unknown, "page2li-4", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(21, Utilities.OriginalGraphType.Unknown, "page2li-1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(22, Utilities.OriginalGraphType.Unknown, "page2li-2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(23, Utilities.OriginalGraphType.Unknown, "page2li-3", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(24, Utilities.OriginalGraphType.Unknown, "page2li-4", "li", new Uri("about:blank")));
            // graph from page 3
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(25, Utilities.OriginalGraphType.Unknown, "H2Title3", "h2", new Uri("about:blank")));
            expectedKnGraph.KnGraph[25].Neighbors.Add(new KnowledgeGraphNode(26, Utilities.OriginalGraphType.Unknown, "H3Title3", "h3", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(26, Utilities.OriginalGraphType.Unknown, "H3Title3", "h3", new Uri("about:blank")));
            expectedKnGraph.KnGraph[26].Neighbors.Add(new KnowledgeGraphNode(27, Utilities.OriginalGraphType.Unknown, "page3li-1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[26].Neighbors.Add(new KnowledgeGraphNode(28, Utilities.OriginalGraphType.Unknown, "page3li-2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[26].Neighbors.Add(new KnowledgeGraphNode(29, Utilities.OriginalGraphType.Unknown, "page3li-3", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[26].Neighbors.Add(new KnowledgeGraphNode(35, Utilities.OriginalGraphType.Unknown, "page3li-4", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[26].Neighbors.Add(new KnowledgeGraphNode(36, Utilities.OriginalGraphType.Unknown, "page3li-5", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(27, Utilities.OriginalGraphType.Unknown, "page3li-1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(28, Utilities.OriginalGraphType.Unknown, "page3li-2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(29, Utilities.OriginalGraphType.Unknown, "page3li-3", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(35, Utilities.OriginalGraphType.Unknown, "page3li-4", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(36, Utilities.OriginalGraphType.Unknown, "page3li-5", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[29].Neighbors.Add(new KnowledgeGraphNode(30, Utilities.OriginalGraphType.Unknown, "page3li-3.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[29].Neighbors.Add(new KnowledgeGraphNode(31, Utilities.OriginalGraphType.Unknown, "page3li-3.2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[29].Neighbors.Add(new KnowledgeGraphNode(32, Utilities.OriginalGraphType.Unknown, "page3li-3.3", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[29].Neighbors.Add(new KnowledgeGraphNode(33, Utilities.OriginalGraphType.Unknown, "page3li-3.4", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph[29].Neighbors.Add(new KnowledgeGraphNode(34, Utilities.OriginalGraphType.Unknown, "page3li-3.5", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(30, Utilities.OriginalGraphType.Unknown, "page3li-2.1.1", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(31, Utilities.OriginalGraphType.Unknown, "page3li-2.1.2", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(32, Utilities.OriginalGraphType.Unknown, "page3li-2.1.3", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(33, Utilities.OriginalGraphType.Unknown, "page3li-2.1.4", "li", new Uri("about:blank")));
            expectedKnGraph.KnGraph.Add(new KnowledgeGraphNode(34, Utilities.OriginalGraphType.Unknown, "page3li-2.1.5", "li", new Uri("about:blank")));

            // compute actual graph from files
            KnowledgeGraph actualKnGraph = WKGE.ExtractKnGraphFromHtmlFiles(htmlFiles);

            AssertKnowledgegraphsAreEqual(expectedKnGraph, actualKnGraph);
        }
예제 #15
0
 public void Test13()
 {
     var paths = KnowledgeGraph
                 .StartFrom(123)
                 .VisitNode(_ => _.return_if(_.GetField <List <string> >("prop").Any(str => str.Length > 3))).ToList();
 }
예제 #16
0
 public void Test10()
 {
     var paths = KnowledgeGraph
                 .StartFrom(123)
                 .VisitNode(_ => _.return_if(_.GetField <string>("prop").Length > "123".Length)).ToList();
 }
예제 #17
0
 public void Test9()
 {
     var paths = KnowledgeGraph
                 .StartFrom(123)
                 .VisitNode(_ => _.return_if(_.count("prop") > "123".Length)).ToList();
 }
예제 #18
0
 public void Test8()
 {
     var paths = KnowledgeGraph
                 .StartFrom(123)
                 .VisitNode(_ => _.Let(_.count("prop"), (i) => FanoutSearch.Action.Return)).ToList();
 }