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()); }
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)); }