/**
  * setUp() does not help us because of the process sharing problem.
  * So we use this instead.
  *
  * @throws \Exception
  */
 protected function prepare()
 {
     $this->initOnce();
     $filesystem = StreamWrapper::register('test');
     foreach ($this->exampleModules->discoverModuleFilenames('module') as $name => $filename) {
         $this->exampleDrupal->getSystemTable()->addModuleWithFilename($name, $filename);
     }
     $this->exampleDrupal->getSystemTable()->moduleSetEnabled('system');
     $this->exampleDrupal->initBootstrapStatus();
     # $this->exampleDrupal->getCache()->cacheSet('module_implements', $data, 'cache_bootstrap');
     xautoload()->getServiceContainer()->set('system', $this->exampleDrupal->getMockDrupalSystem());
     $this->callLog = new CallLog();
     StaticCallLog::setCallLog($this->callLog);
 }
 /**
  * Runs after a test is finished.
  */
 private function unprepare()
 {
     stream_wrapper_unregister('test');
     StaticCallLog::unsetCallLog();
 }