public void PuntosPertenceARectaTest() { string strMethod = Logger.TraceStartMethod(); bool blResultadoMetodo = true; List <CoordenadasCartesianas> arr = new List <CoordenadasCartesianas>() { new CoordenadasCartesianas(), new CoordenadasCartesianas() }; Dictionary <Recta, List <CoordenadasCartesianas> > dicResultadosCorrectos = new Dictionary <Recta, List <CoordenadasCartesianas> >() { //Punto: Recta :A(1,3) y B(2,-5) { new Recta() { Punto1 = new CoordenadasCartesianas(1, 3), Punto2 = new CoordenadasCartesianas(2, -5) }, new List <CoordenadasCartesianas>() { new CoordenadasCartesianas(5, -29), new CoordenadasCartesianas(6, -37) } }, { new Recta() { Punto1 = new CoordenadasCartesianas(1, 2), Punto2 = new CoordenadasCartesianas(3, 4) }, new List <CoordenadasCartesianas>() { new CoordenadasCartesianas(8, 9), new CoordenadasCartesianas(9, 10) } } }; //Test de Puntos Especificos foreach (var puntoRecta in dicResultadosCorrectos) { if (!GeometriaHelper.PuntosPertenceARecta(puntoRecta.Key.Punto1, puntoRecta.Key.Punto2, puntoRecta.Value.ToArray())) { Logger.Trace(TraceEventType.Warning, "{0}: {1} No pertenecen a Recta {2} , {3}", TestsConstants.FALLO, CoordenadasCartesianas.ToString(puntoRecta.Value), puntoRecta.Key.Punto1.ToString(), puntoRecta.Key.Punto2.ToString()); blResultadoMetodo = false; } } //Test de puntos calculados para una recta: Y= 11 - 8x CoordenadasCartesianas punto1 = new CoordenadasCartesianas(1, 3); CoordenadasCartesianas punto2 = new CoordenadasCartesianas(2, -5); for (int x = 0; x <= 14; x++) { int y = 11 - 8 * x;//Formula de la recta a testear CoordenadasCartesianas punto = new CoordenadasCartesianas(x, y); if (!GeometriaHelper.PuntosPertenceARecta(punto1, punto2, punto)) { Logger.Trace(TraceEventType.Warning, "{0}: {1} No pertenece a Recta {2} , {3}", TestsConstants.FALLO, punto.ToString(), punto1.ToString(), punto2.ToString()); blResultadoMetodo = false; } } base.TraceResultMethod_EvaluaAssert(strMethod, blResultadoMetodo); }
public void ConvertirACartesianasTest() { string strMethod = Logger.TraceStartMethod(); int iDistancia = 2; Dictionary <CoordenadasPolares, CoordenadasCartesianas> ResultadosCorrectos = new Dictionary <CoordenadasPolares, CoordenadasCartesianas>() { { new CoordenadasPolares() { Distancia = iDistancia, Angulo = 0 }, new CoordenadasCartesianas() { X = 0, Y = 2 } }, { new CoordenadasPolares() { Distancia = iDistancia, Angulo = 45 }, new CoordenadasCartesianas() { X = 1.41, Y = 1.41 } }, { new CoordenadasPolares() { Distancia = iDistancia, Angulo = 90 }, new CoordenadasCartesianas() { X = 2, Y = 0 } }, { new CoordenadasPolares() { Distancia = iDistancia, Angulo = 135 }, new CoordenadasCartesianas() { X = 1.41, Y = -1.41 } }, { new CoordenadasPolares() { Distancia = iDistancia, Angulo = 180 }, new CoordenadasCartesianas() { X = 0, Y = -2 } }, { new CoordenadasPolares() { Distancia = iDistancia, Angulo = 225 }, new CoordenadasCartesianas() { X = -1.41, Y = -1.41 } }, { new CoordenadasPolares() { Distancia = iDistancia, Angulo = 270 }, new CoordenadasCartesianas() { X = -2, Y = 0 } }, { new CoordenadasPolares() { Distancia = iDistancia, Angulo = 315 }, new CoordenadasCartesianas() { X = -1.41, Y = 1.41 } } }; bool blResultadoMetodo = true; foreach (var cPolar in ResultadosCorrectos) { CoordenadasCartesianas cCartesianaCalculada = cPolar.Key.ConvertirACartesianas(); string strMsgFormat = string.Format("{0} -> {1} = {2}", cPolar.Key.ToString(), cCartesianaCalculada.ToString(), cPolar.Value.ToString()); string strResultadoComparacion; if (cPolar.Value.X == Math.Round(cCartesianaCalculada.X, 2) && cPolar.Value.Y == Math.Round(cCartesianaCalculada.Y, 2)) { strResultadoComparacion = TestsConstants.CORRECTO; } else { strResultadoComparacion = TestsConstants.FALLO; blResultadoMetodo = false; } Logger.Trace(TraceEventType.Information, string.Format("{0} : {1}.", strMsgFormat, strResultadoComparacion)); } base.TraceResultMethod_EvaluaAssert(strMethod, blResultadoMetodo); }