コード例 #1
0
        public void findMatchingRoutes()
        {
            IEnumerable<string> stringSeq = new List<string>() { "A","B" };
            DataChunkRoute<string> prevRoute = routeFactory.newDataChunkRoute(
                nodeList.newGateNode());
            RouteCriterion<string> criterion = new RouteCriterion<string>() {
                desiredSequence = stringSeq, routeSoFar = prevRoute };
            IEnumerable<Route> matchingRoutes = vn.findMatchingRoutes(criterion);
            Assert.AreEqual(1, matchingRoutes.Count());

            criterion.desiredSequence = new List<string>() { "A", "C" };
            matchingRoutes = vn.findMatchingRoutes(criterion);
            Assert.AreEqual(0, matchingRoutes.Count());
        }
コード例 #2
0
ファイル: RouteTest.cs プロジェクト: ArtV/DataSequenceGraph
        public void routePrefixMatches()
        {
            DataChunkRoute<string> prevRoute = routeFactory.newDataChunkRoute(list.newGateNode());
            RouteCriterion<string> criterion = new RouteCriterion<string>()
            {
                desiredSequence = new List<string>() { "A", "B" },
                routeSoFar = prevRoute
            };
            Assert.IsTrue(routeAB.prefixMatches(criterion));

            prevRoute = routeFactory.newDataChunkRoute(list.newGateNode());
            criterion = new RouteCriterion<string>()
            {
                desiredSequence = new List<string>() { "A", "B", "C" },
                routeSoFar = prevRoute
            };
            Assert.IsTrue(routeABC.prefixMatches(criterion));
            Assert.IsTrue(routeABCD.prefixMatches(criterion));

            criterion = new RouteCriterion<string>()
            {
                desiredSequence = new List<string>() { "B", "D" },
                routeSoFar = routeAB
            };
            Assert.IsTrue(routeBD.prefixMatches(criterion));
            Assert.IsTrue(routeAB.meetsRequisites(routeBD.requisiteLinks));
        }