private EliminarEtiquetasAUnDiccionarioRespuesta ArrangeYActEliminarEtiquetasAUnDiccionario() { //Arrange diccionarioInicialDeLasPruebas = InicializarDiccionario(); diccionarioRepositorio.ObtenerUnDiccionario(diccionarioInicialDeLasPruebas.Id).Returns(diccionarioInicialDeLasPruebas); diccionarioRepositorio.SalvarUnDiccionario(diccionarioInicialDeLasPruebas).Returns(diccionarioRespuestaEliminarEtiquetasDiccionario); EliminarEtiquetasAUnDiccionarioPeticion peticion = EliminarEtiquetasAUnDiccionarioPeticion.CrearNuevaInstancia(); peticion.DiccionarioId = diccionarioInicialDeLasPruebas.Id; peticion.ListaDeEtiquetas = ListaDeEtiquetaAEliminar(); //Act AplicacionServicio serviciosApi = new AplicacionServicio(diccionarioRepositorio); var respuesta = serviciosApi.EliminarEtiquetasAUnDiccionario(peticion); return(respuesta); }
/// <summary> /// Fecha creación: Mayo, 2015. /// Descripción: Método que elimina una o más etiquetas de un diccionario. /// </summary> /// <param name="peticion">Se recibe un objeto de tipo EliminarEtiquetasAUnDiccionarioPeticion que contiene la lista de etiquetas a eliminar de un diccionario.</param> /// <returns>Retorna un objeto de tipo EliminarEtiquetasAUnDiccionarioRespuesta que contiene la lista de etiquetas que contiene el diccionario.</returns> public EliminarEtiquetasAUnDiccionarioRespuesta EliminarEtiquetasAUnDiccionario(EliminarEtiquetasAUnDiccionarioPeticion peticion) { var eliminarEtiquetasDiccionario = EliminarEtiquetasAUnDiccionarioRespuesta.CrearNuevaInstancia(); try { var diccionario = diccionarioRepositorio.ObtenerUnDiccionario(peticion.DiccionarioId); if (diccionario != null) { if ((diccionario.Id.ToString() != Guid.Empty.ToString()) && (diccionario.Id.ToString() == peticion.DiccionarioId.ToString())) { var etiquetasDiccionario = peticion.ListaDeEtiquetas; diccionario = etiquetasDiccionario.Aggregate(diccionario, (current, etiquetaDiccionario) => current.EliminarEtiqueta(etiquetaDiccionario)); var diccionarioModificado = diccionarioRepositorio.SalvarUnDiccionario(diccionario); if (diccionarioModificado != null) { eliminarEtiquetasDiccionario.ListaDeEtiquetas = diccionarioModificado.Etiquetas.ToList(); eliminarEtiquetasDiccionario.Relaciones["diccionario"] = diccionarioModificado.Id; eliminarEtiquetasDiccionario.Respuesta = null; } else { throw new Exception("Ocurrió un error guardando los cambios en el diccionario."); } } else { throw new Exception("La consulta no retornó el diccionario solicitado."); } } else { throw new Exception("Ocurrió un error consultando los diccionarios."); } } catch (Exception ex) { throw ex; } return(eliminarEtiquetasDiccionario); }