diff --git a/src/test/java/com/yatl/controller/TodoControllerTest.java b/src/test/java/com/yatl/controller/TodoControllerTest.java index 3190deb296c7b9d30bfd7017a400afd7b8bd4621..8a19ac97f2d880f70e4bc77460904f4b7078d477 100644 --- a/src/test/java/com/yatl/controller/TodoControllerTest.java +++ b/src/test/java/com/yatl/controller/TodoControllerTest.java @@ -65,4 +65,43 @@ class TodoControllerTest { e.printStackTrace(); } } + + @Test + public void testThrows500WhenGetByIdDatabaseError() { + try { + when(ctx.pathParam("id")).thenReturn("1"); + when(todoDao.getById(1)).thenThrow(new SQLException()); + todoController.getTodoById(ctx); + verify(ctx).status(500); + } catch (SQLException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + @Test + public void testThrows404WhenGetByIdNotFound() { + try { + when(ctx.pathParam("id")).thenReturn("1"); + when(todoDao.getById(1)).thenReturn(null); + todoController.getTodoById(ctx); + verify(ctx).status(404); + } catch (SQLException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } + + + @Test + public void testThrows500WhenGetAllDatabaseError() { + try { + when(todoDao.getAll()).thenThrow(new SQLException()); + todoController.getAllTodos(ctx); + verify(ctx).status(500); + } catch (SQLException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } } \ No newline at end of file