Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Test
- public void createBeer_Should_Return_CreatedBeer_When_ValidBeerDto() throws Exception {
- // Arrange
- BeerDto beerDto = createMockBeerDto();
- Beer mockBeer = createMockBeer();
- Mockito.when(beerMapper.fromDto(Mockito.any(BeerDto.class))).thenReturn(createMockBeerFromBeerDto());
- Mockito.when(authenticationHelper.tryGetUser(Mockito.any())).thenReturn(createMockUserAdmin());
- Mockito.when(beerService.create(Mockito.any(Beer.class), Mockito.any(User.class))).thenReturn(mockBeer);
- // Act, Assert
- mockMvc.perform(MockMvcRequestBuilders.post("/api/beers")
- .contentType(MediaType.APPLICATION_JSON)
- .content("{\"name\": \"MockBeerName\", \"abv\": 5.5, \"styleId\": 1}")
- .header(HttpHeaders.AUTHORIZATION, "valid"))
- .andExpect(MockMvcResultMatchers.status().isCreated())
- .andExpect(MockMvcResultMatchers.jsonPath("$.name").value("MockBeerName"))
- .andExpect(MockMvcResultMatchers.jsonPath("$.style.name").value("MockStyleName")) // Corrected path to style name
- .andExpect(MockMvcResultMatchers.jsonPath("$.abv").value(5.5));
- }
- @Test
- public void createBeer_ShouldReturn_NotFound_When_StyleId_IsInvalid() throws Exception {
- // Arrange
- BeerDto beerDto = createMockBeerDto();
- Beer mockBeer = createMockBeer();
- Mockito.when(beerMapper.fromDto(Mockito.any(BeerDto.class))).thenThrow(EntityNotFoundException.class);
- // Act, Assert
- mockMvc.perform(MockMvcRequestBuilders.post("/api/beers")
- .contentType(MediaType.APPLICATION_JSON)
- .content("{\"name\": \"MockBeerName\", \"abv\": 5.5, \"styleId\": 1}")
- .header(HttpHeaders.AUTHORIZATION, "valid"))
- .andExpect(MockMvcResultMatchers.status().isNotFound());
- }
- @Test
- public void createBeer_ShouldReturn_CONFLICT_When_DuplicateName() throws Exception {
- /* // no idea why moking the beerService doesnot work
- Mockito.when(beerService.create(Mockito.any(Beer.class), Mockito.any(User.class)))
- .thenThrow(DuplicateEntityException.class);*/
- // Arrange
- Mockito.when(beerMapper.fromDto(Mockito.any(BeerDto.class)))
- .thenThrow(DuplicateEntityException.class);
- // Act, Assert
- mockMvc.perform(MockMvcRequestBuilders.post("/api/beers")
- .contentType(MediaType.APPLICATION_JSON)
- .content("{\"name\": \"MockBeerName\", \"abv\": 5.5, \"styleId\": 1}")
- .header(HttpHeaders.AUTHORIZATION, "valid"))
- .andExpect(MockMvcResultMatchers.status().isConflict());
- }
- @Test
- public void createBeer_ShouldReturn_Unauthorized_When_UnauthorizedExcThrown() throws Exception {
- // Arrange
- BeerDto beerDto = createMockBeerDto();
- Beer mockBeer = createMockBeer();
- Mockito.when(authenticationHelper.tryGetUser(Mockito.any()))
- .thenThrow(UnauthorizedAccessException.class);
- // Act, Assert
- mockMvc.perform(MockMvcRequestBuilders.post("/api/beers")
- .contentType(MediaType.APPLICATION_JSON)
- .content("{\"name\": \"MockBeerName\", \"abv\": 5.5, \"styleId\": 1}")
- .header(HttpHeaders.AUTHORIZATION, "valid"))
- .andExpect(MockMvcResultMatchers.status().isUnauthorized());
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement