Advertisement
Georgi_Benchev

Untitled

Jan 22nd, 2025
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.14 KB | None | 0 0
  1. // UPDATE
  2.  
  3.  
  4.     @Test
  5.     public void updateBeer_ShouldReturn_UpdatedBeer_When_ValidRequest() throws Exception {
  6.         // Arrange
  7.         Beer mockBeer = createMockBeerFromBeerDtoWithId();
  8.  
  9.         Mockito.when(beerMapper.fromDto(Mockito.anyInt(), Mockito.any(BeerDto.class))).thenReturn(mockBeer);
  10.         Mockito.when(authenticationHelper.tryGetUser(Mockito.any())).thenReturn(createMockUserAdmin());
  11.         Mockito.when(beerService.update(Mockito.any(Beer.class), Mockito.any(User.class))).thenReturn(mockBeer);
  12.  
  13.         // Act & Assert
  14.         mockMvc.perform(MockMvcRequestBuilders.put("/api/beers/{id}", 1)
  15.                         .contentType(MediaType.APPLICATION_JSON)
  16.                         .content("{\"name\": \"MockBeerName\", \"abv\": 5.5, \"styleId\": 1}")
  17.                         .header(HttpHeaders.AUTHORIZATION, "valid"))
  18.                 .andExpect(MockMvcResultMatchers.status().isOk())
  19.                 .andExpect(MockMvcResultMatchers.jsonPath("$.name").value("MockBeerName"))
  20.                 .andExpect(MockMvcResultMatchers.jsonPath("$.style.name").value("MockStyleName"))
  21.                 .andExpect(MockMvcResultMatchers.jsonPath("$.abv").value(5.5));
  22.     }
  23.  
  24.     @Test
  25.     public void updateBeer_ShouldReturn_NotFound_When_StyleId_IsInvalid() throws Exception {
  26.         // Arrange
  27.         Mockito.when(beerMapper.fromDto(Mockito.anyInt(), Mockito.any(BeerDto.class)))
  28.                 .thenThrow(EntityNotFoundException.class);
  29.  
  30.         // Act, Assert
  31.         mockMvc.perform(MockMvcRequestBuilders.put("/api/beers/{id}", 1)
  32.                         .contentType(MediaType.APPLICATION_JSON)
  33.                         .content("{\"name\": \"MockBeerName\", \"abv\": 5.5, \"styleId\": 1}")
  34.                         .header(HttpHeaders.AUTHORIZATION, "valid"))
  35.                 .andExpect(MockMvcResultMatchers.status().isNotFound());
  36.     }
  37.  
  38.     @Test
  39.     public void updateBeer_ShouldReturn_CONFLICT_When_DuplicateName() throws Exception {
  40.        /* // no idea why moking the beerService doesnot work
  41.         Mockito.when(beerService.update(Mockito.any(Beer.class), Mockito.any(User.class)))
  42.                 .thenThrow(DuplicateEntityException.class);*/
  43.         // Arrange
  44.         Mockito.when(beerMapper.fromDto(Mockito.anyInt(), Mockito.any(BeerDto.class)))
  45.                 .thenThrow(DuplicateEntityException.class);
  46.  
  47.         // Act, Assert
  48.         mockMvc.perform(MockMvcRequestBuilders.put("/api/beers/{id}", 1)
  49.                         .contentType(MediaType.APPLICATION_JSON)
  50.                         .content("{\"name\": \"MockBeerName\", \"abv\": 5.5, \"styleId\": 1}")
  51.                         .header(HttpHeaders.AUTHORIZATION, "valid"))
  52.                 .andExpect(MockMvcResultMatchers.status().isConflict());
  53.     }
  54.  
  55.     @Test
  56.     public void updateBeer_ShouldReturn_Unauthorized_When_UnauthorizedExcThrown() throws Exception {
  57.         // Arrange
  58.         Mockito.when(authenticationHelper.tryGetUser(Mockito.any()))
  59.                 .thenThrow(UnauthorizedAccessException.class);
  60.  
  61.         // Act, Assert
  62.         mockMvc.perform(MockMvcRequestBuilders.put("/api/beers/{id}", 1)
  63.                         .contentType(MediaType.APPLICATION_JSON)
  64.                         .content("{\"name\": \"MockBeerName\", \"abv\": 5.5, \"styleId\": 1}")
  65.                         .header(HttpHeaders.AUTHORIZATION, "valid"))
  66.                 .andExpect(MockMvcResultMatchers.status().isUnauthorized());
  67.     }
  68.  
  69.     // DELETE
  70.  
  71.     @Test
  72.     public void deleteBeer_ShouldReturn_StatusOK_When_ValidRequest() throws Exception {
  73.         // Arrange
  74.         Mockito.when(authenticationHelper.tryGetUser(Mockito.any())).thenReturn(createMockUserAdmin());
  75.         Mockito.when(beerService.delete(Mockito.anyInt(), Mockito.any(User.class))).thenReturn(createMockBeer());
  76.  
  77.         // Act & Assert
  78.         mockMvc.perform(MockMvcRequestBuilders.delete("/api/beers/{id}", 1)
  79.                         .header(HttpHeaders.AUTHORIZATION, "valid"))
  80.                 .andExpect(MockMvcResultMatchers.status().isOk());
  81.     }
  82.  
  83.     @Test
  84.     public void deleteBeer_ShouldReturn_NotFound_When_BeerId_IsInvalid() throws Exception {
  85.         // Arrange
  86.       /*  Mockito.when(beerService.delete(Mockito.anyInt(), Mockito.any(User.class)))
  87.                 .thenThrow(EntityNotFoundException.class);*/
  88.         Mockito.when(authenticationHelper.tryGetUser(Mockito.any())).thenThrow(EntityNotFoundException.class);
  89.  
  90.  
  91.         // Act, Assert
  92.         mockMvc.perform(MockMvcRequestBuilders.delete("/api/beers/{id}", 1)
  93.                         .header(HttpHeaders.AUTHORIZATION, "valid"))
  94.                 .andExpect(MockMvcResultMatchers.status().isNotFound());
  95.     }
  96.  
  97.  
  98.     @Test
  99.     public void deleteBeer_ShouldReturn_Unauthorized_When_UnauthorizedExcThrown() throws Exception {
  100.         // Arrange
  101.         Mockito.when(authenticationHelper.tryGetUser(Mockito.any()))
  102.                 .thenThrow(UnauthorizedAccessException.class);
  103.  
  104.         // Act, Assert
  105.         mockMvc.perform(MockMvcRequestBuilders.delete("/api/beers/{id}", 1)
  106.                         .header(HttpHeaders.AUTHORIZATION, "valid"))
  107.                 .andExpect(MockMvcResultMatchers.status().isUnauthorized());
  108.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement