Update
@Transactional
public ProductDTO update(Long id, ProductDTO dto) {
try {
Product entity = repository.getReferenceById(id);
copyDtoToEntity(dto, entity);
entity = repository.save(entity);
return new ProductDTO(entity);
}
catch (EntityNotFoundException e) {
throw new ResourceNotFoundException("Recurso não encontrado");
}
}
Temos dois cenários, um de Id existente e outro de não existente.
Método Update do Service, passamos um ID + o corpo do que será alterado
Como já mockamos o save (do insert), precisamos fazer o do getReferenceById.
Mock

Atualizado