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
9b5c8e30
authored
Jan 13, 2024
by
María Hidalgo
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
errores corregidos
parent
3b82c56b
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
33 additions
and
6 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 @
9b5c8e30
...
...
@@ -2,7 +2,6 @@ package es.ujaen.dae.carpoolingdae.servicios;
import
jakarta.transaction.Transactional
;
import
jakarta.validation.Valid
;
//import javax.validation.Valid;
import
jakarta.validation.constraints.NotBlank
;
import
jakarta.validation.constraints.NotNull
;
...
...
@@ -47,12 +46,12 @@ public class SistemaCarpooling {
*/
public
Usuario
altaUsuario
(
@NotNull
@Valid
Usuario
usuario
)
throws
UsuarioNoRegistrado
{
//log.info("Usuario con datos: " + usuario + "registrandose");
if
(
repositorioUsuarios
.
buscar
(
usuario
.
getDni
()).
isPresent
()){
throw
new
UsuarioYaRegistrado
();
}
else
{
repositorioUsuarios
.
guardar
(
usuario
);
//log.info("Usuario con datos: " + usuario + "registrado");
return
usuario
;
}
}
...
...
@@ -143,7 +142,7 @@ public class SistemaCarpooling {
* @param viaje el viaje del que se obtendrán las solicitudes
* @return lista de solicitudes pendientes del viaje
*/
@Transactional
//
@Transactional
public
List
<
Usuario
>
obtenerSolicitudesPendientes
(
@NotNull
Viaje
viaje
)
{
// Verificar que el viaje esté en estado PENDIENTE
if
(
viaje
.
getEstado
()
!=
EstadoViaje
.
PENDIENTE
)
{
...
...
@@ -160,6 +159,7 @@ public class SistemaCarpooling {
* @param viaje el viaje del que se obtendrán los pasajeros
* @return lista de pasajeros confirmados del viaje
*/
//@Transactional
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
)
{
...
...
src/test/java/es/ujaen/dae/carpoolingdae/servicios/SistemaCarpoolingTest.java
View file @
9b5c8e30
...
...
@@ -15,6 +15,7 @@ import java.time.LocalDate;
import
java.time.LocalDateTime
;
import
java.util.List
;
import
jakarta.transaction.Transactional
;
import
jakarta.validation.ConstraintViolationException
;
import
org.assertj.core.api.Assertions
;
...
...
@@ -129,6 +130,7 @@ public class SistemaCarpoolingTest {
}
@Transactional
@Test
@DirtiesContext
(
methodMode
=
MethodMode
.
AFTER_METHOD
)
public
void
testEnviarSolicitudViaje
()
{
...
...
@@ -193,7 +195,7 @@ public class SistemaCarpoolingTest {
assertTrue
(
solicitudesPendientes
.
contains
(
pasajero
));
}
//@Transactional
@Test
public
void
testAceptarPasajeroViaje
()
{
// Crear un usuario conductor
...
...
@@ -224,19 +226,44 @@ public class SistemaCarpoolingTest {
// Crear un viaje
Viaje
viaje
=
new
Viaje
(
"Origen"
,
"Destino"
,
"Origen"
,
LocalDateTime
.
of
(
2023
,
9
,
30
,
8
,
0
),
2
,
50.0
);
sistemaCarpooling
.
agregarViaje
(
conductor
,
viaje
);
// 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
());
// Login antes de enviar solicitud
sistemaCarpooling
.
loginUsuario
(
pasajero
.
getDni
(),
"clave"
);
viaje
.
setEstado
(
EstadoViaje
.
PENDIENTE
);
sistemaCarpooling
.
enviarSolicitudViaje
(
viaje
,
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
));
sistemaCarpooling
.
aceptarPasajeroViaje
(
viaje
,
pasajero
,
conductor
);
// Obtener pasajeros del viaje
List
<
Usuario
>
pasajerosViaje
=
sistemaCarpooling
.
obtenerPasajeros
(
viaje
);
// Comprobar que el pasajero coincide con el introducido
assertTrue
(
pasajerosViaje
.
contains
(
pasajero
));
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