Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
María Hidalgo
/
carpooling-dae
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
3b82c56b
authored
Jan 11, 2024
by
María Hidalgo
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Modifando tests hasta error lazy
parent
78dbe318
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
50 additions
and
11 deletions
src/main/java/es/ujaen/dae/carpoolingdae/servicios/SistemaCarpooling.java
src/test/java/es/ujaen/dae/carpoolingdae/servicios/SistemaCarpoolingTest.java
src/main/java/es/ujaen/dae/carpoolingdae/servicios/SistemaCarpooling.java
View file @
3b82c56b
package
es
.
ujaen
.
dae
.
carpoolingdae
.
servicios
;
import
jakarta.transaction.Transactional
;
import
jakarta.validation.Valid
;
//import javax.validation.Valid;
import
jakarta.validation.constraints.NotBlank
;
...
...
@@ -121,6 +122,8 @@ public class SistemaCarpooling {
*
* @param viaje al que se envía la solicitud
*/
//@Transactional
public
void
enviarSolicitudViaje
(
@NotNull
Viaje
viaje
,
@NotNull
Usuario
pasajero
)
{
// Llamar a la función en viaje para enviar la solicitud
viaje
.
enviarSolicitudParaSerPasajero
(
viaje
,
pasajero
);
...
...
@@ -140,6 +143,7 @@ public class SistemaCarpooling {
* @param viaje el viaje del que se obtendrán las solicitudes
* @return lista de solicitudes pendientes del viaje
*/
@Transactional
public
List
<
Usuario
>
obtenerSolicitudesPendientes
(
@NotNull
Viaje
viaje
)
{
// Verificar que el viaje esté en estado PENDIENTE
if
(
viaje
.
getEstado
()
!=
EstadoViaje
.
PENDIENTE
)
{
...
...
@@ -158,7 +162,7 @@ public class SistemaCarpooling {
*/
public
List
<
Usuario
>
obtenerPasajeros
(
@NotNull
Viaje
viaje
)
{
//Podemos ver los pasajeros antes y después del viaje
if
(
viaje
.
getEstado
()
!=
EstadoViaje
.
PENDIENTE
||
viaje
.
getEstado
()
!=
EstadoViaje
.
REALIZADO
)
{
if
(
viaje
.
getEstado
()
!=
EstadoViaje
.
PENDIENTE
&&
viaje
.
getEstado
()
!=
EstadoViaje
.
REALIZADO
)
{
throw
new
ViajeCancelado
();
}
...
...
src/test/java/es/ujaen/dae/carpoolingdae/servicios/SistemaCarpoolingTest.java
View file @
3b82c56b
...
...
@@ -104,6 +104,9 @@ public class SistemaCarpoolingTest {
"mhm@red.ujaen.es"
,
clave
);
sistemaCarpooling
.
altaUsuario
(
usuario
);
sistemaCarpooling
.
loginUsuario
(
usuario
.
getDni
(),
"mariahm"
);
// Agregar el viaje al sistema
sistemaCarpooling
.
agregarViaje
(
usuario
,
viaje
);
...
...
@@ -148,21 +151,47 @@ public class SistemaCarpoolingTest {
"+34600999889"
,
"pasajero@example.com"
,
"clave"
);
// Crear un viaje
Viaje
viaje
=
new
Viaje
(
"Origen"
,
sistemaCarpooling
.
altaUsuario
(
conductor
);
sistemaCarpooling
.
altaUsuario
(
pasajero
);
sistemaCarpooling
.
loginUsuario
(
conductor
.
getDni
(),
"clave"
);
// Crear un objeto Viaje válido
Viaje
viaje
=
new
Viaje
(
// ID del viaje
"Destino"
,
"Origen"
,
LocalDateTime
.
of
(
2023
,
9
,
30
,
8
,
0
),
2
,
50.0
);
sistemaCarpooling
.
altaUsuario
(
conductor
);
sistemaCarpooling
.
altaUsuario
(
pasajero
);
// Agregar el viaje al sistema
sistemaCarpooling
.
agregarViaje
(
conductor
,
viaje
);
sistemaCarpooling
.
enviarSolicitudViaje
(
viaje
,
pasajero
);
assertTrue
(
viaje
.
usuariosSolicitantes
.
contains
(
pasajero
));
// el viaje paraver si ha sido añadido
String
origenBusqueda
=
"Origen"
;
String
destinoBusqueda
=
"Destino"
;
LocalDateTime
fechaBusqueda
=
LocalDateTime
.
of
(
2023
,
9
,
30
,
8
,
0
);
List
<
Viaje
>
viajesEncontrados
=
sistemaCarpooling
.
buscarViajes
(
origenBusqueda
,
destinoBusqueda
,
fechaBusqueda
);
Viaje
viajeEnc
=
viajesEncontrados
.
get
(
0
);
Assertions
.
assertThat
(
viajeEnc
.
getDestino
()).
isEqualTo
(
viaje
.
getDestino
());
Assertions
.
assertThat
(
viajeEnc
.
getOrigen
()).
isEqualTo
(
viaje
.
getOrigen
());
Assertions
.
assertThat
(
viajeEnc
.
getfechaHora
()).
isEqualTo
(
viaje
.
getfechaHora
());
Assertions
.
assertThat
(
viajeEnc
.
getPlazasDisponibles
()).
isEqualTo
(
viaje
.
getPlazasDisponibles
());
Assertions
.
assertThat
(
viajeEnc
.
getPrecioAsiento
()).
isEqualTo
(
viaje
.
getPrecioAsiento
());
sistemaCarpooling
.
loginUsuario
(
pasajero
.
getDni
(),
"clave"
);
sistemaCarpooling
.
enviarSolicitudViaje
(
viajeEnc
,
pasajero
);
// Obtener solicitudes pendientes del viaje
List
<
Usuario
>
solicitudesPendientes
=
sistemaCarpooling
.
obtenerSolicitudesPendientes
(
viaje
);
// Comprobar que el pasajero está en la lista de solicitudes pendientes
assertTrue
(
solicitudesPendientes
.
contains
(
pasajero
));
}
@Test
...
...
@@ -186,6 +215,12 @@ public class SistemaCarpoolingTest {
"+34600999889"
,
"pasajero@example.com"
,
"clave"
);
sistemaCarpooling
.
altaUsuario
(
conductor
);
sistemaCarpooling
.
altaUsuario
(
pasajero
);
// Login antes de agregar el viaje
sistemaCarpooling
.
loginUsuario
(
conductor
.
getDni
(),
"clave"
);
// Crear un viaje
Viaje
viaje
=
new
Viaje
(
...
...
@@ -195,13 +230,13 @@ public class SistemaCarpoolingTest {
2
,
50.0
);
sistemaCarpooling
.
altaUsuario
(
conductor
);
sistemaCarpooling
.
altaUsuario
(
pasajero
);
sistemaCarpooling
.
agregarViaje
(
conductor
,
viaje
);
// Login antes de enviar solicitud
sistemaCarpooling
.
loginUsuario
(
pasajero
.
getDni
(),
"clave"
);
viaje
.
setEstado
(
EstadoViaje
.
PENDIENTE
);
sistemaCarpooling
.
enviarSolicitudViaje
(
viaje
,
pasajero
);
sistemaCarpooling
.
aceptarPasajeroViaje
(
viaje
,
pasajero
,
conductor
);
assertTrue
(
viaje
.
usuariosConfirmados
.
contains
(
pasajero
));
assertEquals
(
EstadoViaje
.
PENDIENTE
,
viaje
.
getEstado
());
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment