public void ObtenerResultadoLogin_SesionYaIniciada() { string nickname = "elrevo"; string contraseña = "elrevo"; try { Uri baseAddress = new Uri("net.tcp://localhost:8090/UNO.Contratos"); serviceHost = new ServiceHost(typeof(UNO.Contratos.JuegoUNOServicio), baseAddress); Binding binding = new NetTcpBinding(); EndpointAddress endpointAddress = new EndpointAddress("net.tcp://localhost:8090/UNOServerTest"); var endpoint = serviceHost.AddServiceEndpoint(typeof(UNO.Contratos.Login.ILogin), binding, endpointAddress.Uri); ServiceMetadataBehavior smb = new ServiceMetadataBehavior { HttpGetEnabled = false }; serviceHost.Description.Behaviors.Add(smb); loginAdmin = new LoginCallbackAdmin(); instanceContext = new InstanceContext(loginAdmin); loginCliente = new LoginClient(instanceContext); endpoint.Name = loginCliente.Endpoint.Name; serviceHost.Open(); loginCliente.IniciarSesion(nickname, contraseña); loginCliente.IniciarSesion(nickname, contraseña); ResultadoLogin resultadoObtenido = loginAdmin.Resultado; ResultadoLogin resultadoEsperado = ResultadoLogin.SesionIniciada; Assert.AreEqual(resultadoEsperado, resultadoObtenido); } catch (EndpointNotFoundException) { } }
/// <summary> /// Método estático encargado de comunicarse con el método de iniciar sesión del servidor. /// </summary> /// <param name="nickname">Nickname del Jugador.</param> /// <param name="contraseña">Contraseña del Jugador.</param> /// <exception cref="EndpointNotFoundException"></exception> /// <exception cref="CommunicationObjectFaultedException"></exception> public static void IniciarSesion(string nickname, string contraseña) { try { servidor.IniciarSesion(nickname, contraseña); } catch (EndpointNotFoundException ex) { LoggerAdmin.EscribirLog("Error", ex); throw; } catch (CommunicationObjectFaultedException ex) { LoggerAdmin.EscribirLog("Error", ex); throw; } }
private void IniciarSesion() { DeshabilitarCamposYBotonones(); string Mensaje; string nombreUsuario = textBoxNombreUsuario.Text.Trim(); string contraseña = passwordBoxContraseña.Password.Trim(); try { InstanceContext instanceContext = new InstanceContext(this); LoginClient cliente = new LoginClient(instanceContext); if (DatosCompletos(nombreUsuario, contraseña)) { cliente.IniciarSesion(nombreUsuario, contraseña); } else { Mensaje = "Se requiere usuario y contraseña"; FuncionesComunes.MostrarMensajeDeError(Mensaje); HabilitarCamposYBotonones(); } } catch (EndpointNotFoundException) { Mensaje = "Falló la conexión con el servidor"; FuncionesComunes.MostrarMensajeDeError(Mensaje); HabilitarCamposYBotonones(); } catch (InvalidOperationException error) { Mensaje = error.Message; FuncionesComunes.MostrarMensajeDeError(Mensaje); HabilitarCamposYBotonones(); } catch (TimeoutException) { Mensaje = "Se excedió el tiempo de espera y no hubo respuesta del servidor."; FuncionesComunes.MostrarMensajeDeError(Mensaje); HabilitarCamposYBotonones(); } }