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