Commit 1102bfd3 by Rubén Ramírez

feat: [TestRecursosController]: Actualizado el tesr la función del controlador…

feat: [TestRecursosController]: Actualizado el tesr la función del controlador de buscar por Id para incrementar el número de accesos
parent 4825fdab
...@@ -305,7 +305,7 @@ public class TestRecursosController { ...@@ -305,7 +305,7 @@ public class TestRecursosController {
@Test @Test
@DirtiesContext @DirtiesContext
void testBuscarRecursoPorId() { void testBuscarRecursoPorId() {
// Creo un administrador // Creo un administrador
restTemplate.postForEntity("/usuarios/", Map.of( restTemplate.postForEntity("/usuarios/", Map.of(
"email", "admin@example.com", "email", "admin@example.com",
"nombreUsuario", "admin", "nombreUsuario", "admin",
...@@ -326,8 +326,8 @@ public class TestRecursosController { ...@@ -326,8 +326,8 @@ public class TestRecursosController {
MultiValueMap<String, Object> formData = new LinkedMultiValueMap<>(); MultiValueMap<String, Object> formData = new LinkedMultiValueMap<>();
DTORecurso dtoRecurso = new DTORecurso( DTORecurso dtoRecurso = new DTORecurso(
null, "Titulo Buscado", "Descripción", LocalDate.now(), "Autor", null, "Titulo Buscado", "Descripción", LocalDate.now(), "Autor",
null,new HashSet<>() null, new HashSet<>()
); );
formData.add("recurso", dtoRecurso); formData.add("recurso", dtoRecurso);
formData.add("foto", new ByteArrayResource(new byte[0]) { formData.add("foto", new ByteArrayResource(new byte[0]) {
@Override @Override
...@@ -340,7 +340,7 @@ public class TestRecursosController { ...@@ -340,7 +340,7 @@ public class TestRecursosController {
var respuestaCreacion = restTemplate.exchange("/recursos/", HttpMethod.POST, request, Void.class); var respuestaCreacion = restTemplate.exchange("/recursos/", HttpMethod.POST, request, Void.class);
assertThat(respuestaCreacion.getStatusCode()).isEqualTo(HttpStatus.CREATED); assertThat(respuestaCreacion.getStatusCode()).isEqualTo(HttpStatus.CREATED);
// Realizo la búsqueda por título para obtener el ID del recurso
ResponseEntity<DTORecurso[]> respuestaBusqueda = restTemplate.getForEntity( ResponseEntity<DTORecurso[]> respuestaBusqueda = restTemplate.getForEntity(
"/recursos/titulo/Titulo Buscado", DTORecurso[].class "/recursos/titulo/Titulo Buscado", DTORecurso[].class
); );
...@@ -349,20 +349,46 @@ public class TestRecursosController { ...@@ -349,20 +349,46 @@ public class TestRecursosController {
Long recursoId = respuestaBusqueda.getBody()[0].getId(); Long recursoId = respuestaBusqueda.getBody()[0].getId();
//Busco por id que si encontraremos // Verifico que el contador de accesos esté en 0 inicialmente
ResponseEntity<DTORecurso> respuestaPorId = restTemplate.exchange( ResponseEntity<DTORecurso> respuestaPorIdAntes = restTemplate.exchange(
"/recursos/{id}", HttpMethod.GET, null, DTORecurso.class, recursoId
);
assertThat(respuestaPorIdAntes.getStatusCode()).isEqualTo(HttpStatus.OK);
assertThat(respuestaPorIdAntes.getBody().getId()).isEqualTo(recursoId);
// Verifico el contador de accesos antes del primer acceso
int contadorAntes = respuestaPorIdAntes.getBody().getContadorAccesos();
assertThat(contadorAntes).isEqualTo(1);
// Accedo al recurso
restTemplate.exchange(
"/recursos/{id}", HttpMethod.GET, null, DTORecurso.class, recursoId
);
// Verifico que el contador de accesos haya aumentado
ResponseEntity<DTORecurso> respuestaPorIdDespues = restTemplate.exchange(
"/recursos/{id}", HttpMethod.GET, null, DTORecurso.class, recursoId
);
assertThat(respuestaPorIdDespues.getStatusCode()).isEqualTo(HttpStatus.OK);
assertThat(respuestaPorIdDespues.getBody().getContadorAccesos()).isEqualTo(3);
// Accedo de nuevo para asegurarme de que el contador aumente otra vez
restTemplate.exchange(
"/recursos/{id}", HttpMethod.GET, null, DTORecurso.class, recursoId "/recursos/{id}", HttpMethod.GET, null, DTORecurso.class, recursoId
); );
assertThat(respuestaPorId.getStatusCode()).isEqualTo(HttpStatus.OK);
assertThat(respuestaPorId.getBody()).isNotNull();
assertThat(respuestaPorId.getBody().getId()).isEqualTo(recursoId);
//Busco por id que no encontraremos // Verifico que el contador de accesos haya aumentado
ResponseEntity<DTORecurso> respuestaPorIdDespuesSegundoAcceso = restTemplate.exchange(
"/recursos/{id}", HttpMethod.GET, null, DTORecurso.class, recursoId
);
assertThat(respuestaPorIdDespuesSegundoAcceso.getStatusCode()).isEqualTo(HttpStatus.OK);
assertThat(respuestaPorIdDespuesSegundoAcceso.getBody().getContadorAccesos()).isEqualTo(5);
// Busco por id que no encontraremos
ResponseEntity<Void> respuestaNoEncontrada = restTemplate.exchange( ResponseEntity<Void> respuestaNoEncontrada = restTemplate.exchange(
"/recursos/{id}", HttpMethod.GET, null, Void.class, 9999 "/recursos/{id}", HttpMethod.GET, null, Void.class, 9999
); );
assertThat(respuestaNoEncontrada.getStatusCode()).isEqualTo(HttpStatus.NOT_FOUND); assertThat(respuestaNoEncontrada.getStatusCode()).isEqualTo(HttpStatus.NOT_FOUND);
} }
@Test @Test
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment