/**
  * @param ProductInterface $product
  * @param array            $drupalProduct
  */
 protected function computeProductGroup(ProductInterface $product, array &$drupalProduct)
 {
     /** @var Group $group */
     foreach ($product->getGroups() as $group) {
         $drupalProduct['groups'][$group->getType()->getCode()]['code'] = $group->getCode();
         foreach ($group->getProducts() as $productInGroup) {
             if ($product->getReference() != $productInGroup->getReference()) {
                 $drupalProduct['groups'][$group->getType()->getCode()]['products'][] = $product->getReference();
             }
         }
     }
 }
 function it_validates_an_entity_which_has_no_identifier($validator, ProductInterface $product, ColumnInfo $columnInfo, ConstraintViolationList $violationList, \ArrayIterator $iterator)
 {
     $product->getReference()->willReturn('sku-001');
     $columnInfo->getPropertyPath()->willReturn('unique_attribute');
     $validator->validate($product)->willReturn($violationList);
     $violationList->getIterator()->willReturn($iterator);
     $iterator->rewind()->willReturn(null);
     $iterator->valid()->willReturn(false);
     $iterator->next()->willReturn(null);
     $this->validate($product, [$columnInfo], [], [])->shouldReturn([]);
 }