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); } }
public BestRouteRefinedAbstraction(BestRouteRefinedAbstractionType type) { switch (type) { case BestRouteRefinedAbstractionType.Optimo: implementor = new BestRouteOptimoImp(); break; } }
public void Get_SamePointCode_ResultNull() { //Arrenge BestRouteOptimoImp act = new BestRouteOptimoImp(); //Act var result = act.Get(_grafo, "a", "a"); //Assert Assert.IsNull(result); }
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); }
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); }
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); }