Example #1
0
        public void Get_Ok_TwoRoutesSameCostAndTime_ResultOneBestTimeAndBestCost()
        {
            //Arrenge
            BestRouteOptimoImp act = new BestRouteOptimoImp();

            //Act
            var result = act.Get(_grafo, "a", "m");

            //Assert
            Assert.IsNotNull(result.BestTime);
            Assert.IsNotNull(result.BestCost);
            Assert.AreEqual(20, result.MinTime);
            Assert.AreEqual(2, result.MinCost);

            Assert.AreEqual("a", result.BestTime.ElementAt(0).PointFromCode);
            Assert.AreEqual("m", result.BestTime.ElementAt(1).PointToCode);
            if (result.BestTime.ElementAt(0).PointToCode.Equals("x"))
            {
                Assert.AreEqual("x", result.BestTime.ElementAt(0).PointToCode);
                Assert.AreEqual("x", result.BestTime.ElementAt(1).PointFromCode);
            }
            else
            {
                Assert.AreEqual("y", result.BestTime.ElementAt(0).PointToCode);
                Assert.AreEqual("y", result.BestTime.ElementAt(1).PointFromCode);
            }
        }
Example #2
0
 public BestRouteRefinedAbstraction(BestRouteRefinedAbstractionType type)
 {
     switch (type)
     {
     case BestRouteRefinedAbstractionType.Optimo:
         implementor = new BestRouteOptimoImp();
         break;
     }
 }
Example #3
0
        public void Get_SamePointCode_ResultNull()
        {
            //Arrenge
            BestRouteOptimoImp act = new BestRouteOptimoImp();

            //Act
            var result = act.Get(_grafo, "a", "a");

            //Assert
            Assert.IsNull(result);
        }
Example #4
0
        public void Get_WithDistanceWithOneVertice_ResultBestTimeNullAndBestCostNull()
        {
            //Arrenge
            BestRouteOptimoImp act = new BestRouteOptimoImp();

            //Act
            var result = act.Get(_grafo, "a", "c");

            //Assert
            Assert.IsNull(result.BestCost);
            Assert.IsNull(result.BestTime);
        }
Example #5
0
        public void Get_NotExistRoutes_ResultBestTimeNullAndBestCostNull()
        {
            //Arrenge
            BestRouteOptimoImp act = new BestRouteOptimoImp();

            //Act
            var result = act.Get(_grafo, "a", "x");

            //Assert
            Assert.IsNull(result.BestCost);
            Assert.IsNull(result.BestTime);
        }
Example #6
0
        public void Get_Ok_ResultBestTimeDiferentBestCost()
        {
            //Arrenge
            BestRouteOptimoImp act = new BestRouteOptimoImp();

            //Act
            var result = act.Get(_grafo, "a", "b");

            //Assert
            Assert.IsNotNull(result.BestTime);
            Assert.AreEqual(4, result.MinTime);
            Assert.AreEqual("c", result.BestTime.ElementAt(0).PointToCode);
            Assert.AreEqual("b", result.BestTime.ElementAt(1).PointToCode);

            Assert.IsNotNull(result.BestCost);
            Assert.AreEqual(2, result.MinCost);
            Assert.AreEqual("z", result.BestCost.ElementAt(0).PointToCode);
            Assert.AreEqual("b", result.BestCost.ElementAt(1).PointToCode);
        }