function it_normalizes_family($transnormalizer, $family, AttributeInterface $name, AttributeInterface $price, AttributeRequirement $ecommercereq, AttributeRequirement $mobilereq, ChannelInterface $ecommerce, ChannelInterface $mobile)
 {
     $transnormalizer->normalize(Argument::cetera())->willReturn([]);
     $family->getCode()->willReturn('mugs');
     $family->getAttributes()->willReturn([$name, $price]);
     $name->getCode()->willReturn('name');
     $price->getCode()->willReturn('price');
     $family->getAttributeAsLabel()->willReturn($name);
     $family->getAttributeRequirements()->willReturn([$ecommercereq, $mobilereq]);
     $ecommercereq->getChannel()->willReturn($ecommerce);
     $mobilereq->getChannel()->willReturn($mobile);
     $ecommercereq->isRequired()->willReturn(true);
     $mobilereq->isRequired()->willReturn(false);
     $ecommerce->getCode()->willReturn('ecommerce');
     $mobile->getCode()->willReturn('mobile');
     $ecommercereq->getAttribute()->willReturn($name);
     $result = $this->normalize($family)->shouldReturn(['code' => 'mugs', 'attributes' => 'name,price', 'attributeAsLabel' => 'name', 'requirements' => 'ecommerce:name|mobile:']);
 }
 /**
  * {@inheritDoc}
  */
 public function isRequired()
 {
     $this->__initializer__ && $this->__initializer__->__invoke($this, 'isRequired', array());
     return parent::isRequired();
 }