Пример #1
1
        public void DeberiaAgregarEnlace()
        {
            Grafo g = new Grafo();
            Nodo n = new Nodo("colo");
            Nodo b = new Nodo("pepe");

            Enlace e = new Enlace(55, n, b);
            g.AgregarNodo(n);
            g.AgregarNodo(b);

            bool cargo = g.AgregarEnlace(e);
            Assert.IsTrue(cargo);
        }
Пример #2
1
        public void DeberiaBorrarEnlace()
        {
            Grafo g = new Grafo();
            Nodo n = new Nodo("colo");
            Nodo b = new Nodo("colo1");

            Enlace e = new Enlace(55, n, b);
            g.AgregarNodo(n);
            g.AgregarNodo(b);
             g.AgregarEnlace(e);
             bool borro = g.BorrarEnlace(e);
             Assert.IsTrue(borro);
        }
Пример #3
0
        public List <Finanza> IngresoMensual()
        {
            List <Finanza> lista = new List <Finanza>();

            OracleCommand _sql = Enlace.ComandoSP();

            try
            {
                Enlace.ConnOpen(_sql);
                _sql.CommandText = "pkg_finanzas.sp_TotalPorMes";
                _sql.Parameters.Add("o_data", OracleDbType.RefCursor).Direction = ParameterDirection.Output;
                OracleDataAdapter adapter = new OracleDataAdapter(_sql);
                DataSet           ds      = new DataSet();
                adapter.Fill(ds);

                foreach (DataRow dr in ds.Tables[0].Rows)
                {
                    Finanza finanza = new Finanza();
                    finanza.Fecha   = dr[0].ToString();
                    finanza.Ingreso = int.Parse(dr[1].ToString());

                    lista.Add(finanza);
                }
            }
            catch (OracleException ex)
            {
                throw ex;
            }
            return(lista);
        }
Пример #4
0
        //Metodo para obtener datos para finanzas
        public DataTable FinanzaDepartamento(int id_departamento, int mes, int anio)
        {
            try
            {
                OracleCommand _sql = Enlace.ComandoSP();
                _sql.CommandText = "pkg_finanzas.sp_FinanzaDepartamento";

                _sql.Parameters.Add("o_data", OracleDbType.RefCursor).Direction = ParameterDirection.Output;

                OracleParameter departamento = _sql.CreateParameter();
                departamento.ParameterName = "departamento";
                departamento.Value         = id_departamento;
                departamento.OracleDbType  = OracleDbType.Int64;
                _sql.Parameters.Add(departamento);

                OracleParameter month = _sql.CreateParameter();
                month.ParameterName = "mes";
                month.Value         = mes;
                month.OracleDbType  = OracleDbType.Int64;
                _sql.Parameters.Add(month);

                OracleParameter year = _sql.CreateParameter();
                year.ParameterName = "anio";
                year.Value         = anio;
                year.OracleDbType  = OracleDbType.Int64;
                _sql.Parameters.Add(year);

                return(Enlace.RegresaDatos(_sql));
            }
            catch (OracleException ex)
            {
                throw ex;
            }
        }
Пример #5
0
        private static void Teste()
        {
            var fisica       = new Fisica();
            var enlace       = new Enlace();
            var rede         = new Rede();
            var transporte   = new Transporte();
            var sessao       = new Sessao();
            var apresentacao = new Apresentacao();
            var aplicacao    = new Aplicacao();

            fisica.Enlace = enlace;

            enlace.Fisica = fisica;
            enlace.Rede   = rede;

            rede.Enlace     = enlace;
            rede.Transporte = transporte;

            transporte.Rede   = rede;
            transporte.Sessao = sessao;

            sessao.Transporte   = transporte;
            sessao.Apresentacao = apresentacao;

            apresentacao.Sessao    = sessao;
            apresentacao.Aplicacao = aplicacao;

            aplicacao.Apresentacao = apresentacao;

            aplicacao.Enviar("Hello Word!!");
            aplicacao.ReceberDados += Aplicacao_ReceberDados;
        }
Пример #6
0
 public void DeberiaDevolverNodoNoVisitado()
 {
     Nodo NodoA = new Nodo();
     Nodo NodoB = new Nodo();
     NodoA.visitado = true;
     Enlace e = new Enlace(33, NodoA, NodoB);
     var NodoC = e.GetNodoNoVisitado();
     Assert.AreEqual(NodoC, NodoB);
 }
Пример #7
0
 public void DeberiaDevolverTruePorqueLos2NodosFueronVisitados()
 {
     Nodo NodoA = new Nodo();
     Nodo NodoB = new Nodo();
     NodoA.visitado = true;
     NodoB.visitado = true;
     Enlace e = new Enlace(33, NodoA, NodoB);
     Assert.IsTrue(e.NodosVisitados());
 }
Пример #8
0
        public void numArchivosContTest()
        {
            Directorio d = new Directorio("prueba");
            Archivo    a = new Archivo("pruebaa", 100.0);

            d.Elementos.Add(a);
            Enlace e1 = new Enlace(d);

            Assert.IsTrue(e1.numArchivosCont() == 0);
        }
Пример #9
0
        public void calculaTamanhoTotalTest()
        {
            Directorio d = new Directorio("prueba");
            Archivo    a = new Archivo("pruebaa", 100.0);

            d.Elementos.Add(a);
            Enlace e1 = new Enlace(d);

            Assert.IsTrue(e1.calculaTamanhoTotal() == 1.0);
        }
Пример #10
0
        public void NoDeberiaAgregarEnlaceSiNoExisteElNodo()
        {
            Grafo g = new Grafo();
            Nodo n = new Nodo("colo");
            Nodo b = new Nodo("colo");

            Enlace e = new Enlace(55, n, b);

            bool cargo = g.AgregarEnlace(e);
            Assert.IsFalse(cargo);
        }
Пример #11
0
        public void DeberiaDevolverNodoNoVisitado()
        {
            Nodo NodoA = new Nodo();
            Nodo NodoB = new Nodo();

            NodoA.visitado = true;
            Enlace e     = new Enlace(33, NodoA, NodoB);
            var    NodoC = e.GetNodoNoVisitado();

            Assert.AreEqual(NodoC, NodoB);
        }
Пример #12
0
        public void DeberiaDevolverTruePorqueLos2NodosFueronVisitados()
        {
            Nodo NodoA = new Nodo();
            Nodo NodoB = new Nodo();

            NodoA.visitado = true;
            NodoB.visitado = true;
            Enlace e = new Enlace(33, NodoA, NodoB);

            Assert.IsTrue(e.NodosVisitados());
        }
Пример #13
0
        public void DeberiaDevolverFalsePorqueUnNodoNoFueroVisitado()
        {
            Nodo NodoA = new Nodo();
            Nodo NodoB = new Nodo();

            NodoA.visitado = true;
            NodoB.visitado = false;
            Enlace e = new Enlace(33, NodoA, NodoB);

            Assert.IsFalse(e.NodosVisitados());
        }
Пример #14
0
        public void DeberiaCrearEnlaceConNodosYPeso()
        {
            Nodo NodoA = new Nodo();
            Nodo NodoB = new Nodo();
            int peso = 33;

            Enlace e = new Enlace(peso, NodoA, NodoB);
            Assert.AreEqual(NodoA, e.NodoA);
            Assert.AreEqual(NodoB, e.NodoB);
            Assert.AreEqual(peso, e.Peso);
        }
Пример #15
0
        /// <summary>
        ///  Si ambos nodos en el enlace existen, agrego el enlace al grafo
        /// </summary>
        /// <param name="e">Enlace a agregar</param>
        /// <returns>True si se agrego</returns>
        public bool AgregarEnlace(Enlace e) //
        {

            if (ExisteNodo(e.NodoA) && ExisteNodo(e.NodoB))
            {
                this.Enlaces.Add(e);
                return true;
            }
            return false;

        }
Пример #16
0
        public void NoDeberiaAgregarEnlaceSiNoExisteElNodo()
        {
            Grafo g = new Grafo();
            Nodo  n = new Nodo("colo");
            Nodo  b = new Nodo("colo");

            Enlace e = new Enlace(55, n, b);

            bool cargo = g.AgregarEnlace(e);

            Assert.IsFalse(cargo);
        }
Пример #17
0
        public void DeberiaModificarNodoB()
        {
            Nodo NodoA = new Nodo();
            Nodo NodoB = new Nodo();
            Nodo NodoC = new Nodo();

            int peso = 33;

            Enlace e = new Enlace(peso, NodoA, NodoB);
            e.NodoB = NodoC;
            Assert.AreEqual(NodoC, e.NodoB);
        }
Пример #18
0
        public ItemFicha()
        {
            Campos = new List<CampoFicha>();
            Imagenes = new List<ImagenFicha>();

            LinkCrear = new Enlace();
            LinkEditar = new Enlace();
            LinkEliminar = new Enlace();
            LinkDetalles = new Enlace();
            LinkHistorial = new Enlace();
            LinkFichaCompleta = new Enlace();
        }
Пример #19
0
        public void DeberiaCrearEnlaceConNodosYPeso()
        {
            Nodo NodoA = new Nodo();
            Nodo NodoB = new Nodo();
            int  peso  = 33;

            Enlace e = new Enlace(peso, NodoA, NodoB);

            Assert.AreEqual(NodoA, e.NodoA);
            Assert.AreEqual(NodoB, e.NodoB);
            Assert.AreEqual(peso, e.Peso);
        }
Пример #20
0
        public void DeberiaModificarPeso()
        {
            Nodo NodoA = new Nodo();
            Nodo NodoB = new Nodo();

            int peso = 33;
            int peso2 = 23;

            Enlace e = new Enlace(peso, NodoA, NodoB);
            e.Peso = peso2;
            Assert.AreEqual(peso2, e.Peso);
        }
Пример #21
0
        public void DeberiaModificarPeso()
        {
            Nodo NodoA = new Nodo();
            Nodo NodoB = new Nodo();

            int peso  = 33;
            int peso2 = 23;

            Enlace e = new Enlace(peso, NodoA, NodoB);

            e.Peso = peso2;
            Assert.AreEqual(peso2, e.Peso);
        }
Пример #22
0
        public void DeberiaModificarNodoB()
        {
            Nodo NodoA = new Nodo();
            Nodo NodoB = new Nodo();
            Nodo NodoC = new Nodo();

            int peso = 33;

            Enlace e = new Enlace(peso, NodoA, NodoB);

            e.NodoB = NodoC;
            Assert.AreEqual(NodoC, e.NodoB);
        }
Пример #23
0
 protected void OpenLink()
 {
     if (enlace == null)
     {
         enlace = new Enlace
         {
             RaiseOnException   = true,
             VerBarraDeProgreso = false,
         };
         enlace.LoginUsuario("sa", "nexus");
         enlace.Iniciar("bicicletas");
     }
 }
Пример #24
0
 public void DeberiaRetornarListaCon1NodoSiElGrafoTiene1Nodo()
 {
     var g = new Grafo();
     var n1 = new Nodo("N1");
     var n2 = new Nodo("N2");
     g.AgregarNodo(n1);
     g.AgregarNodo(n2);
     var e1 = new Enlace(2, n1, n2);
     g.AgregarEnlace(e1);
     
     var l = Kruskal.Ejecutar(g);
     Assert.IsNotNull(l);
     Assert.AreEqual(1, l.Count);
 }
Пример #25
0
        public void DeberiaBorrarEnlace()
        {
            Grafo g = new Grafo();
            Nodo  n = new Nodo("colo");
            Nodo  b = new Nodo("colo1");

            Enlace e = new Enlace(55, n, b);

            g.AgregarNodo(n);
            g.AgregarNodo(b);
            g.AgregarEnlace(e);
            bool borro = g.BorrarEnlace(e);

            Assert.IsTrue(borro);
        }
Пример #26
0
        public void DeberiaAgregarEnlace()
        {
            Grafo g = new Grafo();
            Nodo  n = new Nodo("colo");
            Nodo  b = new Nodo("pepe");

            Enlace e = new Enlace(55, n, b);

            g.AgregarNodo(n);
            g.AgregarNodo(b);

            bool cargo = g.AgregarEnlace(e);

            Assert.IsTrue(cargo);
        }
Пример #27
0
        public void DeberiaRetornarTruePorqueTodosLosNodosFueronVisitados()
        {
            Grafo g  = new Grafo();
            Nodo  n1 = new Nodo("n1");
            Nodo  n2 = new Nodo("n2");

            Enlace e = new Enlace(55, n1, n2);

            g.AgregarNodo(n1);
            g.AgregarNodo(n2);
            n1.visitado = true;
            n2.visitado = true;
            bool visitados = g.TodosVisitados();

            Assert.IsTrue(visitados);
        }
        public async Task <Object []> CrearEnlace(Enlace enlace)
        {
            Object [] response = new Object [2];
            try {
                await AppDbContext.enlaces.AddAsync(enlace);

                await AppDbContext.SaveChangesAsync();

                response[0] = true;
            }
            catch (Exception exception) {
                response[1] = (exception.InnerException != null) ?
                              exception.InnerException.Message : exception.Message;
            }
            return(response);
        }
        public async Task <Object []> EliminarEnlace(int id_enlace)
        {
            Object [] response = new Object [2]; response[0] = false;
            try {
                Enlace linkToDelete = await AppDbContext.enlaces.Where(e =>
                                                                       e.id_enlace == id_enlace).FirstOrDefaultAsync();

                AppDbContext.enlaces.Remove(linkToDelete);
                await AppDbContext.SaveChangesAsync(); response[0] = true;
            }
            catch (Exception exception) {
                response[1] = (exception.InnerException != null) ?
                              exception.InnerException.Message : exception.Message;
            }
            return(response);
        }
Пример #30
0
        public void DeberiaRetornarListaCon1NodoSiElGrafoTiene1Nodo()
        {
            var g  = new Grafo();
            var n1 = new Nodo("N1");
            var n2 = new Nodo("N2");

            g.AgregarNodo(n1);
            g.AgregarNodo(n2);
            var e1 = new Enlace(2, n1, n2);

            g.AgregarEnlace(e1);

            var l = Kruskal.Ejecutar(g);

            Assert.IsNotNull(l);
            Assert.AreEqual(1, l.Count);
        }
Пример #31
0
        public void EnlaceTest()
        {
            Archivo    a = new Archivo("pruebaa", 100.0);
            Directorio d = new Directorio("pruebad");
            Comprimido c = new Comprimido("pruebac");

            Enlace e1 = new Enlace(a);
            Enlace e2 = new Enlace(d);
            Enlace e3 = new Enlace(c);

            Assert.IsTrue(e1.Nombre.Equals("pruebaa"));
            Assert.IsTrue(e2.Nombre.Equals("pruebad"));
            Assert.IsTrue(e3.Nombre.Equals("pruebac"));

            Enlace e4 = new Enlace(a);

            try
            {
                Enlace e5 = new Enlace(e4);
                Assert.Fail();
            }
            catch (Exception e) { };

            try
            {
                e1.Nombre = "otro";
                Assert.Fail();
            }
            catch (Exception e) { };


            try
            {
                e2.Nombre = "otro";
                Assert.Fail();
            }
            catch (Exception e) { };


            try
            {
                e3.Nombre = "otro";
                Assert.Fail();
            }
            catch (Exception e) { };
        }
Пример #32
0
        public void DeberiaRetornarELEnlaceDeMenorPeso()
        {
            var g  = new Grafo();
            var n1 = new Nodo("N1");
            var n2 = new Nodo("N2");
            var n3 = new Nodo("N3");
            var n4 = new Nodo("N4");
            var n5 = new Nodo("N5");
            var n6 = new Nodo("N6");


            g.AgregarNodo(n1);
            g.AgregarNodo(n2);
            g.AgregarNodo(n3);
            g.AgregarNodo(n4);
            g.AgregarNodo(n5);
            g.AgregarNodo(n6);

            var e1 = new Enlace(2, n1, n2);
            var e2 = new Enlace(7, n2, n3);
            var e3 = new Enlace(3, n1, n3);
            var e4 = new Enlace(20, n1, n6);
            var e5 = new Enlace(5, n3, n6);
            var e6 = new Enlace(9, n1, n5);
            var e7 = new Enlace(3, n5, n4);

            g.AgregarEnlace(e1);
            g.AgregarEnlace(e2);
            g.AgregarEnlace(e3);
            g.AgregarEnlace(e4);
            g.AgregarEnlace(e5);
            g.AgregarEnlace(e6);
            g.AgregarEnlace(e7);

            n1.visitado = true;
            n2.visitado = true;
            var enlaces = g.GetEnlaces(n1);


            Enlace eMenor = Prim.EnlaceMenorPeso(enlaces);

            Assert.IsNotNull(eMenor);
            Assert.AreNotEqual(eMenor, e1);
            Assert.AreEqual(eMenor, e3);
        }
Пример #33
0
        public void DeberiaDevolverLaListaDeEnlacesDe1NodoSiNoSeVisitoElOtroNodo()
        {
            Grafo g = new Grafo();

            var n1 = new Nodo("N1");
            var n2 = new Nodo("N2");
            var n3 = new Nodo("N3");
            var n4 = new Nodo("N4");
            var n5 = new Nodo("N5");
            var n6 = new Nodo("N6");

            g.AgregarNodo(n1);
            g.AgregarNodo(n2);
            g.AgregarNodo(n3);
            g.AgregarNodo(n4);
            g.AgregarNodo(n5);
            g.AgregarNodo(n6);

            var e1 = new Enlace(2, n1, n2);
            var e2 = new Enlace(7, n2, n3);
            var e3 = new Enlace(3, n1, n3);
            var e4 = new Enlace(20, n1, n6);
            var e5 = new Enlace(5, n3, n6);
            var e6 = new Enlace(9, n1, n5);
            var e7 = new Enlace(3, n5, n4);

            g.AgregarEnlace(e1);
            g.AgregarEnlace(e2);
            g.AgregarEnlace(e3);
            g.AgregarEnlace(e4);
            g.AgregarEnlace(e5);
            g.AgregarEnlace(e6);
            g.AgregarEnlace(e7);
            n1.visitado = true;
            n2.visitado = true;
            List <Enlace> enlaces = g.GetEnlaces(n1);

            Assert.IsFalse(enlaces.Contains(e1)); // Esta visitado
            Assert.IsTrue(enlaces.Contains(e3));
            Assert.IsTrue(enlaces.Contains(e4));
            Assert.IsTrue(enlaces.Contains(e6));
            Assert.IsFalse(enlaces.Contains(e7));
            Assert.IsFalse(enlaces.Contains(e2));
            Assert.IsFalse(enlaces.Contains(e5));
        }
Пример #34
0
        public void DeberiaDevolverLaListaDeEnlacesOrdenada()
        {
            Grafo g = new Grafo();

            var n1 = new Nodo("N1");
            var n2 = new Nodo("N2");
            var n3 = new Nodo("N3");
            var n4 = new Nodo("N4");
            var n5 = new Nodo("N5");
            var n6 = new Nodo("N6");

            g.AgregarNodo(n1);
            g.AgregarNodo(n2);
            g.AgregarNodo(n3);
            g.AgregarNodo(n4);
            g.AgregarNodo(n5);
            g.AgregarNodo(n6);

            var e1 = new Enlace(2, n1, n2);
            var e2 = new Enlace(7, n2, n3);
            var e3 = new Enlace(3, n1, n3);
            var e4 = new Enlace(20, n1, n6);
            var e5 = new Enlace(5, n3, n6);
            var e6 = new Enlace(9, n1, n5);
            var e7 = new Enlace(3, n5, n4);

            g.AgregarEnlace(e1);
            g.AgregarEnlace(e2);
            g.AgregarEnlace(e3);
            g.AgregarEnlace(e4);
            g.AgregarEnlace(e5);
            g.AgregarEnlace(e6);
            g.AgregarEnlace(e7);

            List <Enlace> enlaces = g.GetEnlacesDeMenorAMayor();

            Assert.AreEqual(2, enlaces[0].Peso);
            Assert.AreEqual(3, enlaces[1].Peso);
            Assert.AreEqual(3, enlaces[2].Peso);
            Assert.AreEqual(5, enlaces[3].Peso);
            Assert.AreEqual(7, enlaces[4].Peso);
            Assert.AreEqual(9, enlaces[5].Peso);
            Assert.AreEqual(20, enlaces[6].Peso);
        }
Пример #35
0
        public void DeberiaRetornarARMGrafo()
        {
            var g  = new Grafo();
            var n1 = new Nodo("N1");
            var n2 = new Nodo("N2");
            var n3 = new Nodo("N3");
            var n4 = new Nodo("N4");
            var n5 = new Nodo("N5");
            var n6 = new Nodo("N6");

            g.AgregarNodo(n1);
            g.AgregarNodo(n2);
            g.AgregarNodo(n3);
            g.AgregarNodo(n4);
            g.AgregarNodo(n5);
            g.AgregarNodo(n6);

            var e1 = new Enlace(2, n1, n2);
            var e2 = new Enlace(7, n2, n3);
            var e3 = new Enlace(3, n1, n3);
            var e4 = new Enlace(20, n1, n6);
            var e5 = new Enlace(5, n3, n6);
            var e6 = new Enlace(9, n1, n5);
            var e7 = new Enlace(3, n5, n4);

            g.AgregarEnlace(e1);
            g.AgregarEnlace(e2);
            g.AgregarEnlace(e3);
            g.AgregarEnlace(e4);
            g.AgregarEnlace(e5);
            g.AgregarEnlace(e6);
            g.AgregarEnlace(e7);

            var l = Kruskal.Ejecutar(g);

            Assert.IsNotNull(l);
            Assert.AreEqual(5, l.Count);
            Assert.AreEqual(e1, l[0]);
            Assert.AreEqual(e3, l[1]);
            Assert.AreEqual(e7, l[2]);
            Assert.AreEqual(e5, l[3]);
            Assert.AreEqual(e6, l[4]);
        }
Пример #36
0
        public void DeberiaRetornarARMGrafo()
        {
            var g = new Grafo();
            var n1 = new Nodo("N1");
            var n2 = new Nodo("N2");
            var n3 = new Nodo("N3");
            var n4 = new Nodo("N4");
            var n5 = new Nodo("N5");
            var n6 = new Nodo("N6");

            g.AgregarNodo(n1);
            g.AgregarNodo(n2);
            g.AgregarNodo(n3);
            g.AgregarNodo(n4);
            g.AgregarNodo(n5);
            g.AgregarNodo(n6);

            var e1 = new Enlace(2, n1, n2);
            var e2 = new Enlace(7, n2, n3);
            var e3 = new Enlace(3, n1, n3);
            var e4 = new Enlace(20, n1, n6);
            var e5 = new Enlace(5, n3, n6);
            var e6 = new Enlace(9, n1, n5);
            var e7 = new Enlace(3, n5, n4);

            g.AgregarEnlace(e1);
            g.AgregarEnlace(e2);
            g.AgregarEnlace(e3);
            g.AgregarEnlace(e4);
            g.AgregarEnlace(e5);
            g.AgregarEnlace(e6);
            g.AgregarEnlace(e7);

            var l = Kruskal.Ejecutar(g);
            Assert.IsNotNull(l);
            Assert.AreEqual(5, l.Count);
            Assert.AreEqual(e1, l[0]);
            Assert.AreEqual(e3, l[1]);
            Assert.AreEqual(e7, l[2]);
            Assert.AreEqual(e5, l[3]);
            Assert.AreEqual(e6, l[4]);
        }
        public async Task <Object []> ActualizarEnlace(Enlace enlace)
        {
            Object [] response = new Object [2];
            try {
                Enlace linkToUpdate = await AppDbContext.enlaces.Where(e =>
                                                                       e.id_enlace == enlace.id_enlace).FirstOrDefaultAsync();

                linkToUpdate.valor_enlace  = enlace.valor_enlace;
                linkToUpdate.status_enlace = enlace.status_enlace;
                linkToUpdate.id_descarga   = enlace.id_descarga;
                AppDbContext.enlaces.Update(linkToUpdate);
                await AppDbContext.SaveChangesAsync();

                response[0] = true;
            }
            catch (Exception exception) {
                response[1] = (exception.InnerException != null) ?
                              exception.InnerException.Message : exception.Message;
            }
            return(response);
        }
Пример #38
0
        //Metodo para listar los departamentos de cada comuna.
        public DataTable ListaDepartamentoPorComuna(int id_comuna)
        {
            try
            {
                OracleCommand _sql = Enlace.ComandoSP();
                _sql.CommandText = "pkg_finanzas.sp_DepartamentoPorComuna";

                _sql.Parameters.Add("o_data", OracleDbType.RefCursor).Direction = ParameterDirection.Output;

                OracleParameter comuna = _sql.CreateParameter();
                comuna.ParameterName = "comuna";
                comuna.Value         = id_comuna;
                comuna.OracleDbType  = OracleDbType.Int64;
                _sql.Parameters.Add(comuna);

                return(Enlace.RegresaDatos(_sql));
            }
            catch (OracleException ex)
            {
                throw ex;
            }
        }
Пример #39
0
 /// <summary>
 /// Elimina el enlace
 /// </summary>
 /// <param name="e">Enlace a eliminar</param>
 /// <returns>True si se elimino</returns>
 public bool BorrarEnlace(Enlace e)
 {
     return this.Enlaces.Remove(e);
 }
Пример #40
0
        public void DeberiaRetornarTruePorqueTodosLosNodosFueronVisitados()
        {
            Grafo g = new Grafo();
            Nodo n1 = new Nodo("n1");
            Nodo n2 = new Nodo("n2");

            Enlace e = new Enlace(55, n1, n2);
            g.AgregarNodo(n1);
            g.AgregarNodo(n2);
            n1.visitado = true;
            n2.visitado = true;
            bool visitados = g.TodosVisitados();
            Assert.IsTrue(visitados);
        }
Пример #41
0
 public void Visitar(Enlace enlace, string Raiz)
 {
     Exportar.ExportarEnlace(enlace, Raiz);
     Visitar(enlace.Origen, enlace.ToString());
     Visitar(enlace.Destino, enlace.ToString());
 }
Пример #42
0
        static IElto_Sistema_Archivos crearSistemaEjemplo()
        {
            Directorio dRaiz = new Directorio("Raiz");

            Directorio dVacio = new Directorio("Directorio Vacio");

            dRaiz.Elementos.Add(dVacio);

            Directorio dUnico = new Directorio("Directorio Con Archivo Unico");
            Archivo    f01    = new Archivo("foto001.jpg", 200);

            dUnico.Elementos.Add(f01);
            dRaiz.Elementos.Add(dUnico);

            Directorio d01 = new Directorio("Directorio Vacio En Archivo Comprimido");
            Archivo    f02 = new Archivo("foto003.jpg", 200);
            Enlace     e01 = new Enlace(f01);

            Comprimido ccSimple = new Comprimido("ccSimple.zip");

            ccSimple.Elementos.Add(d01);
            ccSimple.Elementos.Add(f02);
            ccSimple.Elementos.Add(e01);
            ccSimple.Elementos.Add(d01);

            Directorio dComprimido = new Directorio("Directorio Con Archivo Comprimido Simple");

            Archivo f03 = new Archivo("foto002.jpg", 200);
            Enlace  e02 = new Enlace(f01);

            dComprimido.Elementos.Add(f03);
            dComprimido.Elementos.Add(e02);
            dComprimido.Elementos.Add(ccSimple);

            dRaiz.Elementos.Add(dComprimido);

            Archivo    f04       = new Archivo("foto007.jpg", 200);
            Comprimido ccAnidada = new Comprimido("ccAnidada.zip");

            ccAnidada.Elementos.Add(f04);
            Archivo f05 = new Archivo("foto008.jpg", 200);

            Comprimido ccCompuesto = new Comprimido("ccComplejo.zip");

            ccCompuesto.Elementos.Add(ccAnidada);
            ccCompuesto.Elementos.Add(f05);

            Archivo f06 = new Archivo("foto005", 200);
            Archivo f07 = new Archivo("foto006", 200);

            Directorio dComprimidoCompuesto = new Directorio("Directorio con Archivo Comprimido Complejo");

            dComprimidoCompuesto.Elementos.Add(f06);
            dComprimidoCompuesto.Elementos.Add(f07);
            dComprimidoCompuesto.Elementos.Add(ccCompuesto);

            Archivo f08 = new Archivo("foto004.jpg", 200);
            Enlace  e03 = new Enlace(ccSimple);
            Enlace  e04 = new Enlace(dVacio);

            Directorio dMultinivel = new Directorio("Directorio con Directorio Anidado");

            dMultinivel.Elementos.Add(f08);
            dMultinivel.Elementos.Add(e03);
            dMultinivel.Elementos.Add(e04);
            dMultinivel.Elementos.Add(dComprimidoCompuesto);

            dRaiz.Elementos.Add(dMultinivel);

            return(dRaiz);
        } // crearSistemaEjemplo
Пример #43
0
 public void DeberiaDevolverFalsePorqueUnNodoNoFueroVisitado()
 {
     Nodo NodoA = new Nodo();
     Nodo NodoB = new Nodo();
     NodoA.visitado = true;
     NodoB.visitado = false;
     Enlace e = new Enlace(33, NodoA, NodoB);
     Assert.IsFalse(e.NodosVisitados());
 }
Пример #44
0
 public void DeberiaCrearEnlace()
 {
     Enlace e = new Enlace();
     Assert.IsNotNull(e);
 }
Пример #45
0
        public void DeberiaDevolverLaListaDeEnlacesOrdenada()
        {
            Grafo g = new Grafo();

            var n1 = new Nodo("N1");
            var n2 = new Nodo("N2");
            var n3 = new Nodo("N3");
            var n4 = new Nodo("N4");
            var n5 = new Nodo("N5");
            var n6 = new Nodo("N6");

            g.AgregarNodo(n1);
            g.AgregarNodo(n2);
            g.AgregarNodo(n3);
            g.AgregarNodo(n4);
            g.AgregarNodo(n5);
            g.AgregarNodo(n6);

            var e1 = new Enlace(2, n1, n2);
            var e2 = new Enlace(7, n2, n3);
            var e3 = new Enlace(3, n1, n3);
            var e4 = new Enlace(20, n1, n6);
            var e5 = new Enlace(5, n3, n6);
            var e6 = new Enlace(9, n1, n5);
            var e7 = new Enlace(3, n5, n4);

            g.AgregarEnlace(e1);
            g.AgregarEnlace(e2);
            g.AgregarEnlace(e3);
            g.AgregarEnlace(e4);
            g.AgregarEnlace(e5);
            g.AgregarEnlace(e6);
            g.AgregarEnlace(e7);

            List<Enlace> enlaces = g.GetEnlacesDeMenorAMayor();

            Assert.AreEqual(2, enlaces[0].Peso);
            Assert.AreEqual(3, enlaces[1].Peso);
            Assert.AreEqual(3, enlaces[2].Peso);
            Assert.AreEqual(5, enlaces[3].Peso);
            Assert.AreEqual(7, enlaces[4].Peso);
            Assert.AreEqual(9, enlaces[5].Peso);
            Assert.AreEqual(20, enlaces[6].Peso);
        }
Пример #46
0
        public void DeberiaDevolverLaListaDeEnlacesDe1NodoSiNoSeVisitoElOtroNodo()
        {
            Grafo g = new Grafo();

            var n1 = new Nodo("N1");
            var n2 = new Nodo("N2");
            var n3 = new Nodo("N3");
            var n4 = new Nodo("N4");
            var n5 = new Nodo("N5");
            var n6 = new Nodo("N6");

            g.AgregarNodo(n1);
            g.AgregarNodo(n2);
            g.AgregarNodo(n3);
            g.AgregarNodo(n4);
            g.AgregarNodo(n5);
            g.AgregarNodo(n6);

            var e1 = new Enlace(2, n1, n2);
            var e2 = new Enlace(7, n2, n3);
            var e3 = new Enlace(3, n1, n3);
            var e4 = new Enlace(20, n1, n6);
            var e5 = new Enlace(5, n3, n6);
            var e6 = new Enlace(9, n1, n5);
            var e7 = new Enlace(3, n5, n4);

            g.AgregarEnlace(e1);
            g.AgregarEnlace(e2);
            g.AgregarEnlace(e3);
            g.AgregarEnlace(e4);
            g.AgregarEnlace(e5);
            g.AgregarEnlace(e6);
            g.AgregarEnlace(e7);
            n1.visitado = true;
            n2.visitado = true;
            List<Enlace> enlaces = g.GetEnlaces(n1);
            Assert.IsFalse(enlaces.Contains(e1)); // Esta visitado
            Assert.IsTrue(enlaces.Contains(e3));
            Assert.IsTrue(enlaces.Contains(e4));
            Assert.IsTrue(enlaces.Contains(e6));
            Assert.IsFalse(enlaces.Contains(e7));
            Assert.IsFalse(enlaces.Contains(e2));
            Assert.IsFalse(enlaces.Contains(e5));
        }
Пример #47
0
 public ValorCampoFicha()
 {
     LinkCrear = new Enlace();
     LinkEditar = new Enlace();
     LinkEliminar = new Enlace();
     LinkDetalles = new Enlace();
     LinkHistorial = new Enlace();
 }
Пример #48
0
 public ImagenFicha()
 {
     LinkCrear = new Enlace();
     LinkEditar = new Enlace();
     LinkEliminar = new Enlace();
     LinkDetalles = new Enlace();
     LinkHistorial = new Enlace();
 }
Пример #49
0
        public void DeberiaRetornarELEnlaceDeMenorPeso()
        {
            var g = new Grafo();
            var n1 = new Nodo("N1");
            var n2 = new Nodo("N2");
            var n3 = new Nodo("N3");
            var n4 = new Nodo("N4");
            var n5 = new Nodo("N5");
            var n6 = new Nodo("N6");
            

            g.AgregarNodo(n1);
            g.AgregarNodo(n2);
            g.AgregarNodo(n3);
            g.AgregarNodo(n4);
            g.AgregarNodo(n5);
            g.AgregarNodo(n6);

            var e1 = new Enlace(2, n1, n2);
            var e2 = new Enlace(7, n2, n3);
            var e3 = new Enlace(3, n1, n3);
            var e4 = new Enlace(20, n1, n6);
            var e5 = new Enlace(5, n3, n6);
            var e6 = new Enlace(9, n1, n5);
            var e7 = new Enlace(3, n5, n4);

            g.AgregarEnlace(e1);
            g.AgregarEnlace(e2);
            g.AgregarEnlace(e3);
            g.AgregarEnlace(e4);
            g.AgregarEnlace(e5);
            g.AgregarEnlace(e6);
            g.AgregarEnlace(e7);
            
            n1.visitado = true;
            n2.visitado = true;
            var enlaces = g.GetEnlaces(n1);
            

            Enlace eMenor = Prim.EnlaceMenorPeso(enlaces);
            Assert.IsNotNull(eMenor);
            Assert.AreNotEqual(eMenor, e1);
            Assert.AreEqual(eMenor, e3);
        }
 public async Task <Object []> CreateLinkAsync([FromBody] Enlace enlace)
 {
     return(await descargas.CrearEnlace(enlace));
 }
 public async Task <Object []> UpdateLinkAsync([FromBody] Enlace enlace)
 {
     return(await descargas.ActualizarEnlace(enlace));
 }