Exemple #1
0
        public async Task ChatBusiness_EliminarContacto_ShouldDelete()
        {
            ChatsBusiness chatBusiness = new ChatsBusiness();

            Contactos contactoParaEliminar = new Contactos
            {
                Consecutivo = 2105
            };

            Tuple <WrapperSimpleTypesDTO, TimeLineNotificaciones> wrapper = await chatBusiness.EliminarContacto(contactoParaEliminar);

            Assert.IsNotNull(wrapper.Item1);
        }
        public async Task <IHttpActionResult> EliminarContacto(Contactos contactoParaEliminar)
        {
            if (contactoParaEliminar == null || contactoParaEliminar.Consecutivo <= 0)
            {
                return(BadRequest("contactoParaEliminar vacio y/o invalido!."));
            }

            try
            {
                Tuple <WrapperSimpleTypesDTO, TimeLineNotificaciones> tupleWrapper = await _chatBusiness.EliminarContacto(contactoParaEliminar);

                if (tupleWrapper.Item1.Exitoso && tupleWrapper.Item2 != null)
                {
                    IHubContext hubContext = GlobalHost.ConnectionManager.GetHubContext <ChatHub>();
                    hubContext.Clients.Group(ChatHub._prefixChatGroupName + tupleWrapper.Item2.CodigoPersonaDestino.ToString()).receiveNotification(tupleWrapper.Item2);
                }

                return(Ok(tupleWrapper.Item1));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }