Пример #1
0
 protected function prepare($object, ObjectKey $objectKey = null)
 {
     if (isset($object)) {
         if (null === $objectKey) {
             $this->metadata = $this->objectManager->getMetadata(get_class($object));
         } else {
             $this->metadata = $this->objectManager->getMetadata($objectKey->getKey());
         }
     }
     $this->doPrepare($object);
 }
Пример #2
0
 /**
  * @test
  */
 public function hydrateValidateDataSourceProcessorsTriggering()
 {
     /**
      * We cannot fetch the metadata from the mock object class name
      * So we use the real object class name.
      */
     $objectRealClass = 'Kassko\\DataMapperTest\\Hydrator\\Fixture\\Model\\Processors';
     $objectMockClass = 'ProcessorsMock';
     $object = $this->getMockBuilder($objectRealClass)->setMockClassName($objectMockClass)->setMethods(['somePreprocessorA', 'somePreprocessorB', 'someProcessorA', 'someProcessorB'])->getMock();
     $object->expects($this->once())->method('somePreprocessorA');
     $object->expects($this->once())->method('somePreprocessorB');
     $object->expects($this->once())->method('someProcessorA');
     $object->expects($this->once())->method('someProcessorB');
     $processorRealClass = 'Kassko\\DataMapperTest\\Hydrator\\Fixture\\Processor\\SomeProcessor';
     $processor = $this->getMockBuilder($processorRealClass)->setMethods(['process'])->getMock();
     $processor->expects($this->exactly(2))->method('process');
     $classMetadata = $this->objectManager->getMetadata($objectRealClass);
     $cmFactory = $this->getMockBuilder(ClassMetadataFactory::class)->getMock();
     $cmFactory->method('loadMetadata')->willReturn($classMetadata);
     $this->objectManager->setClassMetadataFactory($cmFactory);
     $hydrator = $this->createHydrator($objectMockClass, [$processorRealClass => $processor]);
     $hydrator->hydrate([], $object);
 }