Example #1
0
        public void TestMethod1()
        {
            List <int> listaOrigenes = new List <int> {
                0, 1, 2, 3
            };
            Nodo        n0         = new Nodo(0, 1, 20);
            Nodo        n1         = new Nodo(0, 3, 500);
            Nodo        n2         = new Nodo(0, 2, 200);
            Nodo        n3         = new Nodo(1, 2, 30);
            Nodo        n4         = new Nodo(1, 3, 30);
            List <Nodo> listaNodos = new List <Nodo>();

            listaNodos.Add(n0);
            listaNodos.Add(n1);
            listaNodos.Add(n2);
            listaNodos.Add(n3);
            listaNodos.Add(n4);
            Nodo        ns0           = new Nodo(0, 0, 0);
            Nodo        ns1           = new Nodo(0, 1, 20);
            Nodo        ns2           = new Nodo(1, 2, 50);
            Nodo        ns3           = new Nodo(1, 3, 50);
            List <Nodo> listaSolucion = new List <Nodo>();

            listaSolucion.Add(ns0);
            listaSolucion.Add(ns1);
            listaSolucion.Add(ns2);
            listaSolucion.Add(ns3);
            AlgoritmoD a1 = new AlgoritmoD();

            a1.setValores(0, 1, listaNodos, listaOrigenes);
            List <Nodo> l = a1.EjecutaAlgoritmo();

            l             = l.Select(x => x).OrderBy(x => x.IdOrigen).ToList();
            listaSolucion = listaSolucion.Select(x => x).OrderBy(x => x.IdOrigen).ToList();

            a1.setValores(0, 3, listaNodos, listaOrigenes);
            Nodo cE1 = new Nodo(0, 3, 500);

            List <Nodo> caminoEsperado = new List <Nodo>();

            caminoEsperado.Add(cE1);

            List <Nodo> caminoObtenido = a1.ObtenerCamino();

            Assert.Equal(caminoEsperado, caminoObtenido);
        }