/**
  * @test serialized xml has type attribute
  */
 public function xmlSerialization()
 {
     $container = new EventContainer(new SerializableEventStub('event.name', 'some data'));
     $this->namingStrategy->expects($this->once())->method('classToType')->with(get_class($container->getEvent()))->will($this->returnValue('stub'));
     $serialized = $this->serializer->serialize($container, 'xml');
     $this->assertEquals(file_get_contents(__DIR__ . '/Fixtures/container.xml'), $serialized);
 }
 /**
  * Normalize event container to serialize with generic serialization
  * Event class name is added
  *
  * @param GenericSerializationVisitor $visitor
  * @param EventContainer              $container
  * @param Context                     $context
  *
  * @return array
  */
 protected function serializeContainer(GenericSerializationVisitor $visitor, EventContainer $container, Context $context)
 {
     $setRoot = $visitor->getRoot() === null;
     $data = array('type' => $this->namingStrategy->classToType(get_class($container->getEvent())), 'data' => $visitor->getNavigator()->accept($container->getEvent(), null, $context));
     if ($setRoot) {
         $visitor->setRoot($data);
     }
     return $data;
 }