public function setUp()
 {
     $persistenceManager = new \common_persistence_Manager(array('persistences' => array('persistenceMock' => array('driver' => 'dbal', 'connection' => array('driver' => 'pdo_sqlite', 'memory' => true)))));
     $serviceManager = $this->getMockForAbstractClass(ServiceLocatorInterface::class);
     $serviceManager->method('get')->with(\common_persistence_Manager::SERVICE_KEY)->willReturn($persistenceManager);
     $createTables = new CreateTables();
     $createTables->setServiceLocator($serviceManager);
     $createTables(array('persistenceMock'));
     $this->storage = new RdsStorage(array('persistence' => 'persistenceMock'));
     $this->storage->setServiceLocator($serviceManager);
 }
 public function __invoke($params)
 {
     $persistenceId = count($params) > 0 ? reset($params) : 'default';
     // createTable
     parent::__invoke(array($persistenceId));
     // create separate file storage
     $fsName = 'revisions';
     $fsm = $this->getServiceManager()->get(FileSystemService::SERVICE_ID);
     $fsm->createFileSystem($fsName, 'tao/revisions');
     $this->getServiceManager()->register(FileSystemService::SERVICE_ID, $fsm);
     $this->registerService('taoRevision/storage', new Storage(['persistence' => $persistenceId]));
     $this->registerService(Repository::SERVICE_ID, new RepositoryService([RepositoryService::OPTION_STORAGE => 'taoRevision/storage', RepositoryService::OPTION_FS => $fsName]));
 }