From 3483a2dd2c3af1bbb24636f5bf01c7ce6bd251b0 Mon Sep 17 00:00:00 2001 From: atusa17 Date: Wed, 13 Mar 2019 22:24:32 -0600 Subject: [PATCH] PAN-50 Addressed Brittany's comment about nonexistent fields --- .../controller/TheoremController.java | 12 ++++++++++ .../controller/TheoremControllerTest.java | 23 +++++++++++++++++++ 2 files changed, 35 insertions(+) diff --git a/persistence/src/main/java/edu/msudenver/tsp/persistence/controller/TheoremController.java b/persistence/src/main/java/edu/msudenver/tsp/persistence/controller/TheoremController.java index fc47620..9a0f699 100644 --- a/persistence/src/main/java/edu/msudenver/tsp/persistence/controller/TheoremController.java +++ b/persistence/src/main/java/edu/msudenver/tsp/persistence/controller/TheoremController.java @@ -62,6 +62,12 @@ public class TheoremController { LOG.debug("Received response from server: query took " + stopWatch.getTotalTimeMillis() + "ms to complete"); LOG.info("Returning list of all theorems with size " + listOfTheorems.size()); + if (listOfTheorems.isEmpty()) { + LOG.warn("No theorems were found for branch {}", branch); + return new ResponseEntity<>(HttpStatus.NOT_FOUND); + } + + LOG.info("Returning list of theorems with branch {}", branch); return new ResponseEntity<>(listOfTheorems, HttpStatus.OK); } @@ -86,6 +92,12 @@ public class TheoremController { LOG.debug("Received response from server: query took " + stopWatch.getTotalTimeMillis() + "ms to complete"); LOG.info("Returning list of all theorems with size " + listOfTheorems.size()); + if (listOfTheorems.isEmpty()) { + LOG.warn("No theorems were found for proven status {}", provenStatus); + return new ResponseEntity<>(HttpStatus.NOT_FOUND); + } + + LOG.info("Returning list of theorems with proven status {}", provenStatus); return new ResponseEntity<>(listOfTheorems, HttpStatus.OK); } diff --git a/persistence/src/test/java/edu/msudenver/tsp/persistence/controller/TheoremControllerTest.java b/persistence/src/test/java/edu/msudenver/tsp/persistence/controller/TheoremControllerTest.java index 5decba2..f3993cc 100644 --- a/persistence/src/test/java/edu/msudenver/tsp/persistence/controller/TheoremControllerTest.java +++ b/persistence/src/test/java/edu/msudenver/tsp/persistence/controller/TheoremControllerTest.java @@ -14,6 +14,7 @@ import org.springframework.http.ResponseEntity; import org.springframework.validation.BindingResult; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.Optional; @@ -114,6 +115,17 @@ public class TheoremControllerTest { verifyZeroInteractions(theoremRepository); } + @Test + public void testGetAllTheoremsByBranch_noTheoremsFound() { + when(theoremRepository.findByBranch(anyString())).thenReturn(Collections.emptyList()); + + final ResponseEntity> responseEntity = theoremController.getAllTheoremsByBranch("test nonexistent branch"); + + assertNotNull(responseEntity); + assertFalse(responseEntity.hasBody()); + assertEquals(HttpStatus.NOT_FOUND, responseEntity.getStatusCode()); + } + @Test public void testGetAllTheoremsByProvenStatus() { final TheoremDto theoremDto = createTheorem(); @@ -143,6 +155,17 @@ public class TheoremControllerTest { verifyZeroInteractions(theoremRepository); } + @Test + public void testGetAllTheoremsByProvenStatus_noTheoremsFound() { + when(theoremRepository.findByProvenStatus(anyBoolean())).thenReturn(Collections.emptyList()); + + final ResponseEntity> responseEntity = theoremController.getAllTheoremsByProvenStatus(false); + + assertNotNull(responseEntity); + assertFalse(responseEntity.hasBody()); + assertEquals(HttpStatus.NOT_FOUND, responseEntity.getStatusCode()); + } + @Test public void testInsertTheorem() { final TheoremDto theoremDto = createTheorem();