예제 #1
0
        public void ProveMapper <TItemOne, TItemTwo, TEdgeOne, TEdgeTwo>(
            IGraph <TItemOne, TEdgeOne> source, IGraph <TItemTwo, TEdgeTwo> target,
            GraphMapper <TItemOne, TItemTwo, TEdgeOne, TEdgeTwo> mapper)
            where TEdgeOne : IEdge <TItemOne>, TItemOne
            where TEdgeTwo : IEdge <TItemTwo>, TItemTwo
        {
            var testerOne = new MapperTester <TItemOne, TItemTwo, TEdgeOne, TEdgeTwo>();

            mapper.ConvertSinkSource();

            testerOne.ProveConversion(source, target, mapper.Get);

            //mapper.Clear();
            mapper.ConvertSourceSink();
            var testerTwo = new MapperTester <TItemTwo, TItemOne, TEdgeTwo, TEdgeOne>();

            testerTwo.ProveConversion(target, source, mapper.Get);
        }
예제 #2
0
        public virtual void Prove()
        {
            base.AddData();
            var visualGraph = new VisualGraph();
            var mapper      =
                new GraphMapper <IThing, IVisual, ILink, IVisualEdge> (
                    (IThingGraph)this.Graph,
                    visualGraph,
                    new VisualThingTransformer().Reverted());

            //mapper.showMarkers = false;
            mapper.ConvertSinkSource();
            Assert.AreEqual(this.Graph.Count, visualGraph.Count);
            this.Graph.Clear();
            mapper.Clear();
            mapper.ConvertSourceSink();
            this.ReportGraph(this.Graph, "Reread");
            Assert.AreEqual(this.Graph.Count, visualGraph.Count);

            ReportSummary();
        }