Unit testing

The code to unit test retrieveTodo is as follows:

     @Test     public void retrieveTodo() throws Exception {       Todo mockTodo = new Todo(1, "Jack", "Learn Spring MVC",        new Date(), false);        when(service.retrieveTodo(anyInt())).thenReturn(mockTodo);       MvcResult result = mvc.perform(       MockMvcRequestBuilders.get("/users/Jack/todos/1")       .accept(MediaType.APPLICATION_JSON))       .andExpect(status().isOk()).andReturn();       String expected = "{id:1,user:Jack,desc:\"Learn Spring       MVC\",done:false}";       JSONAssert.assertEquals(expected,        result.getResponse().getContentAsString(), false);     }

A few important things to note are as follows:

  • when(service.retrieveTodo(anyInt())).thenReturn(mockTodo): We are mocking the retrieveTodo service method to return the mock ...

Get Mastering Spring 5.0 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.