/** * Constructor * * @param \F3\FLOW3\Object\ObjectManagerInterface $objectManager A reference to the object manager * @return void * @author Robert Lemke <*****@*****.**> */ public function __construct(\F3\FLOW3\Object\ObjectManagerInterface $objectManager) { $this->objectManager = $objectManager; $FLOW3 = new \F3\FLOW3\Core\Bootstrap('Testing'); $FLOW3->initializeClassLoader(); $FLOW3->initializeConfiguration(); $FLOW3->initializeErrorHandling(); $FLOW3->initializeObjectManager(); $objectManagerReflection = new \ReflectionProperty($FLOW3, 'objectManager'); $objectManagerReflection->setAccessible(TRUE); self::$objectManagerForTesting = $objectManagerReflection->getValue($FLOW3); $loggerReflection = new \ReflectionProperty($FLOW3, 'systemLogger'); $loggerReflection->setAccessible(TRUE); $loggerReflection->setValue($FLOW3, $this->objectManager->getObject('F3\\FLOW3\\Log\\LoggerFactory')->create('testLogger', 'F3\\FLOW3\\Log\\Logger', array('F3\\FLOW3\\Log\\Backend\\NullBackend'))); $FLOW3->initializePackages(); $FLOW3->initializeSignalsSlots(); $FLOW3->initializeCache(); $FLOW3->initializeReflection(); $FLOW3->initializeObjects(); $FLOW3->initializeAOP(); $FLOW3->initializePersistence(); self::$objectManagerForTesting->setObjectClassName('F3\\FLOW3\\Session\\SessionInterface', 'F3\\FLOW3\\Session\\TransientSession'); $FLOW3->initializeSession(); }