Exemplo n.º 1
0
 public void SetUp()
 {
     railRoadFactoryMock                       = new Mock <RailRoadFactory>();
     railRoadIOServiceMock                     = new Mock <RailRoadIOService>();
     distanceEvaluator                         = new Mock <DistanceEvaluator>();
     limitedStopsRouteFinderMock               = new Mock <LimitedStopsRouteFinder>();
     exactNuberStopsRouteFinderMock            = new Mock <ExactNumberStopsRouteFinder>();
     shortestRoutFinderMock                    = new Mock <DistanceOfShortestRouteFinder>();
     numberOfRoutesWithDistanceLimitFinderMock = new Mock <NumberOfRoutesWithDistanceLimitFinder>();
     railRoadService = new RailRoadService(railRoadFactoryMock.Object,
                                           railRoadIOServiceMock.Object,
                                           distanceEvaluator.Object,
                                           limitedStopsRouteFinderMock.Object,
                                           exactNuberStopsRouteFinderMock.Object,
                                           shortestRoutFinderMock.Object,
                                           numberOfRoutesWithDistanceLimitFinderMock.Object);
 }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            ILogger logger = new LoggerStandardOut();

            validateInput(args, logger);
            IInputService    inputService    = new InputService(logger);
            IRailRoadService railRoadService = new RailRoadService();
            var input = inputService.handle(args[0]);
            var graph = railRoadService.createGraph(input);

            IStepsSearch stepsSearch            = new DistanceOfTheRoute();
            IDistanceOfTheRouteService distance = new DistanceOfTheRouteService(graph, logger);
            var outPut1 = distance.get(stepsSearch, "A", "B", "C");
            var outPut2 = distance.get(stepsSearch, "A", "D");
            var outPut3 = distance.get(stepsSearch, "A", "D", "C");
            var outPut4 = distance.get(stepsSearch, "A", "E", "B", "C", "D");
            var outPut5 = distance.get(stepsSearch, "A", "E", "D");

            IBreadthFirstSearch    maxOfStops       = new NumberOfRoutesAtMaximumOfStops();
            IBreadthFirstSearch    exactlyStops     = new NumberOfRoutesWithExactlyStops();
            IBreadthFirstSearch    routesByDistance = new NumberOfRoutesByDistance();
            INumberOfRoutesService bfsService       = new NumberOfRoutesService(graph, logger);
            var outPut6  = bfsService.get(maxOfStops, "C", "C", 3);
            var outPut7  = bfsService.get(exactlyStops, "A", "C", 4);
            var outPut10 = bfsService.get(routesByDistance, "C", "C", 30);

            IShortestPathSearch shortestPath = new LengthOfTheShortestRoute();
            ILengthOfTheShortestRouteService shortestPathService = new LengthOfTheShortestRouteService(graph, logger);
            var outPut8 = shortestPathService.get(shortestPath, "A", "C");
            var outPut9 = shortestPathService.get(shortestPath, "B", "B");


            System.Console.WriteLine($" Output #1: {outPut1}");
            System.Console.WriteLine($" Output #2: {outPut2}");
            System.Console.WriteLine($" Output #3: {outPut3}");
            System.Console.WriteLine($" Output #4: {outPut4}");
            System.Console.WriteLine($" Output #5: {outPut5}");
            System.Console.WriteLine($" Output #6: {outPut6}");
            System.Console.WriteLine($" Output #7: {outPut7}");
            System.Console.WriteLine($" Output #8: {outPut8}");
            System.Console.WriteLine($" Output #9: {outPut9}");
            System.Console.WriteLine($" Output #10: {outPut10}");
        }