@@ -35,4 +35,39 @@ Este test verifica que el método `getPrecioAsiento()` devuelva el valor esperad
### `testSetPrecioAsiento()`
En este test, se utiliza el método `setPrecioAsiento()` para cambiar el precio de los asientos a 25. Luego, se utiliza `assertEquals` para comprobar que el valor de `precioAsiento` se haya actualizado correctamente.
Estos tests ayudan a garantizar que la clase `Viaje` funcione según lo esperado y que sus atributos se configuren y recuperen correctamente.
\ No newline at end of file
Estos tests ayudan a garantizar que la clase `Viaje` funcione según lo esperado y que sus atributos se configuren y recuperen correctamente.
## Explicación de los Tests en SistemaCarPoolingTest.java
### `setUp()`
Este método es un **método de configuración** que se ejecuta antes de cada prueba. En este caso, crea una instancia de la clase `SistemaCarPooling`. El propósito de este test es asegurarse de que el sistema esté configurado y listo para realizar pruebas en cada método.
### `testAddViaje()`
Este test verifica la funcionalidad del método `addViaje()` de la clase `SistemaCarPooling`. Comienza creando una instancia de `Viaje` con valores específicos para origen, destino, fecha, número de asientos y precio de los asientos. Luego, se agrega este viaje al sistema y se utiliza `assertTrue` para asegurarse de que el sistema realmente contiene el viaje que se acaba de agregar.
### `testAddReserva()`
Este test verifica la funcionalidad del método `addReserva()` de la clase `SistemaCarPooling`. Comienza creando una instancia de `Usuario` y una instancia de `Reserva` con valores específicos. Luego, se agrega esta reserva al sistema y se utiliza `assertTrue` para asegurarse de que el sistema realmente contiene la reserva que se acaba de agregar.
### `testLoginSuccess()`
Este test verifica el comportamiento del método `login()` del sistema cuando se proporcionan credenciales válidas. Crea una instancia de `Usuario`, agrega al usuario al sistema y luego llama a `login()` con las credenciales correctas. Utiliza `assertTrue` para asegurarse de que el usuario pueda iniciar sesión con éxito.
### `testLoginFailure()`
En este test se verifica el comportamiento del método `login()` del sistema cuando se proporcionan credenciales incorrectas. Llama a `login()` con credenciales incorrectas y utiliza `assertFalse` para asegurarse de que el usuario no pueda iniciar sesión.
### `testGetNombre()`
Este test verifica que el método `getNombre()` de la clase `SistemaCarPooling` devuelva el valor esperado para el nombre del sistema, que en este caso debe ser "Blablacar".
### `testSetNombre()`
En este test, se utiliza el método `setNombre()` para cambiar el nombre del sistema a "NuevoNombre". Luego, se utiliza `assertEquals` para comprobar que el valor del nombre se haya actualizado correctamente.
### `testGetUsuarios()`
Este test verifica que el método `getUsuarios()` de la clase `SistemaCarPooling` devuelva una lista de usuarios que no sea nula.
### `testGetViajes()`
Al igual que el test `testGetUsuarios()`, este test verifica que el método `getViajes()` de la clase `SistemaCarPooling` devuelva una lista de viajes que no sea nula.
### `testGetReservas()`
Este test verifica que el método `getReservas()` de la clase `SistemaCarPooling` devuelva una lista de reservas que no sea nula.
Estos tests aseguran que el sistema de Carpooling (`SistemaCarPooling`) funcione correctamente al agregar viajes y reservas, al permitir que los usuarios inicien sesión con credenciales válidas e invalidas, y que los métodos de obtención de información devuelvan resultados esperados.