Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
Antonio Rueda
/
reserva-hoteles
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
9e490125
authored
Sep 27, 2024
by
Antonio Rueda
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Creación de paquetes de tests y clase para test de integración del
servicio.
parent
e29bfb94
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
84 additions
and
2 deletions
.gitignore
src/main/java/es/ujaen/dae/reservahoteles/servicios/ServicioReservas.java
src/main/java/es/ujaen/dae/reservahoteles/util/UtilidadesCadenas.java
src/test/java/es/ujaen/dae/reservahoteles/servicios/TestServicioReservas.java
src/test/java/es/ujaen/dae/reservahoteles/util/TestUtilidadesCadenas.java
.gitignore
View file @
9e490125
...
...
@@ -21,3 +21,4 @@ error-screenshots/
webpack.generated.js
/etc/
/h2db/
/nbproject/
src/main/java/es/ujaen/dae/reservahoteles/servicios/ServicioReservas.java
View file @
9e490125
...
...
@@ -10,11 +10,13 @@ import java.util.List;
import
java.util.Map
;
import
java.util.Optional
;
import
java.util.TreeMap
;
import
org.springframework.stereotype.Service
;
/**
*
* @author ajrueda
*/
@Service
public
class
ServicioReservas
{
Map
<
Integer
,
Hotel
>
hoteles
;
Map
<
String
,
Cliente
>
clientes
;
...
...
@@ -36,8 +38,12 @@ public class ServicioReservas {
}
public
Optional
<
Cliente
>
login
(
String
email
,
String
clave
)
{
return
Optional
.
ofNullable
(
clientes
.
get
(
email
))
.
filter
(
cliente
->
cliente
.
clave
().
equals
(
clave
));
// Equivalente al código de abajo pero más seguro y compacto
// return Optional.ofNullable(clientes.get(email))
// .filter(cliente -> cliente.clave().equals(clave));
Cliente
cliente
=
clientes
.
get
(
email
);
return
(
cliente
!=
null
&&
cliente
.
clave
().
equals
(
clave
))
?
Optional
.
of
(
cliente
):
Optional
.
empty
();
}
public
List
<
Hotel
>
buscarPorLocalidad
(
String
localidad
,
...
...
src/main/java/es/ujaen/dae/reservahoteles/util/UtilidadesCadenas.java
0 → 100644
View file @
9e490125
package
es
.
ujaen
.
dae
.
reservahoteles
.
util
;
import
java.text.Normalizer
;
/**
* Utilidades para comparación flexible de cadenas
* @author ajrueda
*/
public
class
UtilidadesCadenas
{
/**
* Normaliza una cadena pasando a minúsculas, quitando espacios al principio,
* final y duplicados y eliminando acentos.
* @param cadena la cadena a normalizar.
* @return
*/
public
static
String
normalizar
(
String
cadena
)
{
return
Normalizer
.
normalize
(
cadena
,
Normalizer
.
Form
.
NFD
)
.
toLowerCase
()
.
replaceAll
(
"[^a-z\\s]"
,
""
)
.
replaceAll
(
" +"
,
" "
)
.
trim
();
}
}
src/test/java/es/ujaen/dae/reservahoteles/servicios/TestServicioReservas.java
0 → 100644
View file @
9e490125
package
es
.
ujaen
.
dae
.
reservahoteles
.
servicios
;
import
es.ujaen.dae.reservahoteles.entidades.Cliente
;
import
org.assertj.core.api.Assertions
;
import
org.junit.jupiter.api.Test
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.test.annotation.DirtiesContext
;
/**
* Test de integración del servicio principal del sistema
* @author ajrueda
*/
@SpringBootTest
(
classes
=
es
.
ujaen
.
dae
.
reservahoteles
.
app
.
ReservaHoteles
.
class
)
public
class
TestServicioReservas
{
@Autowired
ServicioReservas
servicio
;
@Test
@DirtiesContext
void
testLoginCliente
()
{
var
cliente
=
new
Cliente
(
"Pedro"
,
"Jaén Jaén"
,
"611203025"
,
"pjaen@gmail.com"
,
"miClAvE"
);
servicio
.
nuevoCliente
(
cliente
);
Assertions
.
assertThat
(
servicio
.
login
(
"ppp@gmail.com"
,
"miClAvE"
)).
isEmpty
();
Assertions
.
assertThat
(
servicio
.
login
(
"pjaen@gmail.com"
,
"xyz"
)).
isEmpty
();
Assertions
.
assertThat
(
servicio
.
login
(
"pjaen@gmail.com"
,
"miClAvE"
)).
hasValueSatisfying
(
c
->
c
.
email
().
equals
(
cliente
.
email
()));
}
}
src/test/java/es/ujaen/dae/reservahoteles/util/TestUtilidadesCadenas.java
0 → 100644
View file @
9e490125
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package
es
.
ujaen
.
dae
.
reservahoteles
.
util
;
import
org.assertj.core.api.Assertions
;
import
org.junit.jupiter.api.Test
;
/**
*
* @author ajrueda
*/
public
class
TestUtilidadesCadenas
{
@Test
void
testNormalizar
()
{
Assertions
.
assertThat
(
UtilidadesCadenas
.
normalizar
(
" áÁaaa ´ OO_OO "
)).
isEqualTo
(
"aaaaa oooo"
);
}
}
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