Multiple ORMs for all database

This commit is contained in:
Nicolas Le Goff
2014-10-16 20:00:27 +02:00
parent 007d83fe57
commit 9a3e92ed9c
252 changed files with 2901 additions and 2417 deletions

View File

@@ -6,7 +6,7 @@ class ApiAccountRepositoryTest extends \PhraseanetTestCase
{
public function testFindByUserAndApplication()
{
$acc = self::$DI['app']['EM']->getRepository('Phraseanet:ApiAccount')->findByUserAndApplication(self::$DI['user_notAdmin'], self::$DI['oauth2-app-user-not-admin']);
$acc = self::$DI['app']['orm.em']->getRepository('Phraseanet:ApiAccount')->findByUserAndApplication(self::$DI['user_notAdmin'], self::$DI['oauth2-app-user-not-admin']);
$this->assertEquals(1, count($acc));
}
}

View File

@@ -8,19 +8,19 @@ class ApiApplicationRepositoryTest extends \PhraseanetTestCase
{
public function testFindByCreator()
{
$app = self::$DI['app']['EM']->getRepository('Phraseanet:ApiApplication')->findByCreator(self::$DI['user']);
$app = self::$DI['app']['orm.em']->getRepository('Phraseanet:ApiApplication')->findByCreator(self::$DI['user']);
$this->assertCount(1, $app);
}
public function testFindByUser()
{
$app = self::$DI['app']['EM']->getRepository('Phraseanet:ApiApplication')->findByUser(self::$DI['user']);
$app = self::$DI['app']['orm.em']->getRepository('Phraseanet:ApiApplication')->findByUser(self::$DI['user']);
$this->assertCount(1, $app);
}
public function testFindAuthorizedAppsByUser()
{
$app = self::$DI['app']['EM']->getRepository('Phraseanet:ApiApplication')->findAuthorizedAppsByUser(self::$DI['user']);
$app = self::$DI['app']['orm.em']->getRepository('Phraseanet:ApiApplication')->findAuthorizedAppsByUser(self::$DI['user']);
$this->assertCount(1, $app);
}
}

View File

@@ -7,7 +7,7 @@ class ApiOauthCodeRepositoryTest extends \PhraseanetTestCase
public function testFindByAccount()
{
self::$DI['app']['manipulator.api-oauth-code']->create(self::$DI['oauth2-app-acc-user'], 'http://www.callback.fr', time() + 40);
$codes = self::$DI['app']['EM']->getRepository('Phraseanet:ApiOauthCode')->findByAccount(self::$DI['oauth2-app-acc-user']);
$codes = self::$DI['app']['orm.em']->getRepository('Phraseanet:ApiOauthCode')->findByAccount(self::$DI['oauth2-app-acc-user']);
$this->assertGreaterThan(0, count($codes));
}
}

View File

@@ -6,13 +6,13 @@ class ApiOauthTokenRepositoryTest extends \PhraseanetTestCase
{
public function testFindDeveloperToken()
{
$tok = self::$DI['app']['EM']->getRepository('Phraseanet:ApiOauthToken')->findByAccount(self::$DI['oauth2-app-acc-user']);
$tok = self::$DI['app']['orm.em']->getRepository('Phraseanet:ApiOauthToken')->findByAccount(self::$DI['oauth2-app-acc-user']);
$this->assertNotNull($tok);
}
public function testFindOauthTokens()
{
$tokens = self::$DI['app']['EM']->getRepository('Phraseanet:ApiOauthToken')->findOauthTokens(self::$DI['oauth2-app-acc-user']);
$tokens = self::$DI['app']['orm.em']->getRepository('Phraseanet:ApiOauthToken')->findOauthTokens(self::$DI['oauth2-app-acc-user']);
$this->assertGreaterThan(0, count($tokens));
}
}

View File

@@ -9,28 +9,28 @@ class FeedItemRepositoryTest extends \PhraseanetTestCase
public function testIs_record_in_public_feedInPublicFeed()
{
$record = self::$DI['record_7'];
$this->assertTrue(self::$DI['app']['EM']->getRepository('Phraseanet:FeedItem')->isRecordInPublicFeed(self::$DI['app'], $record->get_sbas_id(), $record->get_record_id()));
$this->assertTrue(self::$DI['app']['orm.em']->getRepository('Phraseanet:FeedItem')->isRecordInPublicFeed(self::$DI['app'], $record->get_sbas_id(), $record->get_record_id()));
}
public function testIs_record_in_public_feedInPrivateFeed()
{
$record = self::$DI['record_2'];
$this->assertFalse(self::$DI['app']['EM']->getRepository('Phraseanet:FeedItem')->isRecordInPublicFeed(self::$DI['app'], $record->get_sbas_id(), $record->get_record_id()));
$this->assertFalse(self::$DI['app']['orm.em']->getRepository('Phraseanet:FeedItem')->isRecordInPublicFeed(self::$DI['app'], $record->get_sbas_id(), $record->get_record_id()));
}
public function testLoadLatestItems()
{
$this->assertCount(3, self::$DI['app']['EM']->getRepository('Phraseanet:FeedItem')->loadLatest(self::$DI['app'], 20));
$this->assertCount(3, self::$DI['app']['orm.em']->getRepository('Phraseanet:FeedItem')->loadLatest(self::$DI['app'], 20));
}
public function testLoadLatestItemsLessItems()
{
$this->assertCount(1, self::$DI['app']['EM']->getRepository('Phraseanet:FeedItem')->loadLatest(self::$DI['app'], 1));
$this->assertCount(1, self::$DI['app']['orm.em']->getRepository('Phraseanet:FeedItem')->loadLatest(self::$DI['app'], 1));
}
public function testLoadLatestWithDeletedDatabox()
{
$feed = self::$DI['app']['EM']->find('Phraseanet:Feed', 2);
$feed = self::$DI['app']['orm.em']->find('Phraseanet:Feed', 2);
$entry = $feed->getEntries()->first();
$item = new FeedItem();
$item->setEntry($entry)
@@ -39,7 +39,7 @@ class FeedItemRepositoryTest extends \PhraseanetTestCase
->setSbasId(0);
$entry->addItem($item);
self::$DI['app']['EM']->persist($item);
self::$DI['app']['orm.em']->persist($item);
$item = new FeedItem();
$item->setEntry($entry)
@@ -48,7 +48,7 @@ class FeedItemRepositoryTest extends \PhraseanetTestCase
->setSbasId(self::$DI['record_1']->get_sbas_id());
$entry->addItem($item);
self::$DI['app']['EM']->persist($item);
self::$DI['app']['orm.em']->persist($item);
$item = new FeedItem();
$item->setEntry($entry)
@@ -56,11 +56,11 @@ class FeedItemRepositoryTest extends \PhraseanetTestCase
->setRecordId(123456789)
->setSbasId(123456789);
$entry->addItem($item);
self::$DI['app']['EM']->persist($item);
self::$DI['app']['orm.em']->persist($item);
self::$DI['app']['EM']->persist($entry);
self::$DI['app']['EM']->flush();
self::$DI['app']['orm.em']->persist($entry);
self::$DI['app']['orm.em']->flush();
$this->assertCount(3, self::$DI['app']['EM']->getRepository('Phraseanet:FeedItem')->loadLatest(self::$DI['app'], 20));
$this->assertCount(3, self::$DI['app']['orm.em']->getRepository('Phraseanet:FeedItem')->loadLatest(self::$DI['app'], 20));
}
}

View File

@@ -38,13 +38,13 @@ class FtpExportRepositoryTest extends \PhraseanetTestCase
->setCrash(12)
->setNbretry(23);
self::$DI['app']['EM']->persist($failure1);
self::$DI['app']['EM']->persist($failure2);
self::$DI['app']['EM']->persist($good1);
self::$DI['app']['EM']->persist($good2);
self::$DI['app']['EM']->flush();
self::$DI['app']['orm.em']->persist($failure1);
self::$DI['app']['orm.em']->persist($failure2);
self::$DI['app']['orm.em']->persist($good1);
self::$DI['app']['orm.em']->persist($good2);
self::$DI['app']['orm.em']->flush();
$crashed = self::$DI['app']['EM']
$crashed = self::$DI['app']['orm.em']
->getRepository('Phraseanet:FtpExport')
->findCrashedExports();
@@ -55,7 +55,7 @@ class FtpExportRepositoryTest extends \PhraseanetTestCase
public function testFindCrashedExportsWithDate()
{
self::$DI['app']['EM']->getEventManager()->removeEventSubscriber(new TimestampableListener());
self::$DI['app']['orm.em']->getEventManager()->removeEventSubscriber(new TimestampableListener());
$failure1 = new FtpExport();
$failure1
@@ -97,14 +97,14 @@ class FtpExportRepositoryTest extends \PhraseanetTestCase
->setNbretry(23)
->setCreated(new \DateTime('-6 days'));
self::$DI['app']['EM']->persist($failure1);
self::$DI['app']['EM']->persist($failure2);
self::$DI['app']['EM']->persist($good1);
self::$DI['app']['EM']->persist($good2);
self::$DI['app']['EM']->persist($good3);
self::$DI['app']['EM']->flush();
self::$DI['app']['orm.em']->persist($failure1);
self::$DI['app']['orm.em']->persist($failure2);
self::$DI['app']['orm.em']->persist($good1);
self::$DI['app']['orm.em']->persist($good2);
self::$DI['app']['orm.em']->persist($good3);
self::$DI['app']['orm.em']->flush();
$crashed = self::$DI['app']['EM']
$crashed = self::$DI['app']['orm.em']
->getRepository('Phraseanet:FtpExport')
->findCrashedExports(new \DateTime('-6 days'));
@@ -179,14 +179,14 @@ class FtpExportRepositoryTest extends \PhraseanetTestCase
$elem4->setExport($doable2);
$doable2->addElement($elem4);
self::$DI['app']['EM']->persist($notDoable1);
self::$DI['app']['EM']->persist($notDoable2);
self::$DI['app']['EM']->persist($doable1);
self::$DI['app']['EM']->persist($doable2);
self::$DI['app']['orm.em']->persist($notDoable1);
self::$DI['app']['orm.em']->persist($notDoable2);
self::$DI['app']['orm.em']->persist($doable1);
self::$DI['app']['orm.em']->persist($doable2);
self::$DI['app']['EM']->flush();
self::$DI['app']['orm.em']->flush();
$doables = self::$DI['app']['EM']
$doables = self::$DI['app']['orm.em']
->getRepository('Phraseanet:FtpExport')
->findDoableExports();
@@ -212,13 +212,13 @@ class FtpExportRepositoryTest extends \PhraseanetTestCase
->setAddr('No match 1')
->setUser(self::$DI['user_alt1']);
self::$DI['app']['EM']->persist($match1);
self::$DI['app']['EM']->persist($match2);
self::$DI['app']['EM']->persist($noMatch1);
self::$DI['app']['orm.em']->persist($match1);
self::$DI['app']['orm.em']->persist($match2);
self::$DI['app']['orm.em']->persist($noMatch1);
self::$DI['app']['EM']->flush();
self::$DI['app']['orm.em']->flush();
$exports = self::$DI['app']['EM']
$exports = self::$DI['app']['orm.em']
->getRepository('Phraseanet:FtpExport')
->findByUser(self::$DI['user']);

View File

@@ -8,20 +8,20 @@ class TaskRepositoryTest extends \PhraseanetTestCase
{
public function testFindActiveTask()
{
$task1 = self::$DI['app']['EM']->find('Phraseanet:Task', 1);
$task1 = self::$DI['app']['orm.em']->find('Phraseanet:Task', 1);
$task1->setStatus(Task::STATUS_STOPPED);
$task2 = self::$DI['app']['EM']->find('Phraseanet:Task', 2);
$task2 = self::$DI['app']['orm.em']->find('Phraseanet:Task', 2);
self::$DI['app']['EM']->persist($task1);
self::$DI['app']['EM']->flush();
self::$DI['app']['orm.em']->persist($task1);
self::$DI['app']['orm.em']->flush();
$repository = self::$DI['app']['EM']->getRepository('Phraseanet:Task');
$repository = self::$DI['app']['orm.em']->getRepository('Phraseanet:Task');
$this->assertSame([$task2], $repository->findActiveTasks());
$task1->setStatus(Task::STATUS_STARTED);
self::$DI['app']['EM']->persist($task1);
self::$DI['app']['EM']->flush();
self::$DI['app']['orm.em']->persist($task1);
self::$DI['app']['orm.em']->flush();
$this->assertSame([$task1, $task2], $repository->findActiveTasks());
}

View File

@@ -8,20 +8,20 @@ class UserRepositoryTest extends \PhraseanetTestCase
{
public function testFindAdminsWithNoAdmins()
{
$users = self::$DI['app']['EM']->getRepository('Phraseanet:User')->findAdmins();
$users = self::$DI['app']['orm.em']->getRepository('Phraseanet:User')->findAdmins();
$this->assertEquals(2, count($users));
}
public function testFindByLogin()
{
$user = self::$DI['app']['EM']->getRepository('Phraseanet:User')->findByLogin('user1');
$user = self::$DI['app']['orm.em']->getRepository('Phraseanet:User')->findByLogin('user1');
$this->assertInstanceOf('Alchemy\Phrasea\Model\Entities\User', $user);
$this->assertNull(self::$DI['app']['EM']->getRepository('Phraseanet:User')->findByLogin('wrong-login'));
$this->assertNull(self::$DI['app']['orm.em']->getRepository('Phraseanet:User')->findByLogin('wrong-login'));
}
public function testFindUserByEmail()
{
$user = self::$DI['app']['EM']->getRepository('Phraseanet:User')->findByEmail('user2@phraseanet.com');
$user = self::$DI['app']['orm.em']->getRepository('Phraseanet:User')->findByEmail('user2@phraseanet.com');
$this->assertInstanceOf('Alchemy\Phrasea\Model\Entities\User', $user);
}
}

View File

@@ -6,7 +6,7 @@ class WebhookEventDeliveryRepositoryTest extends \PhraseanetTestCase
{
public function testFindUndeliveredEvents()
{
$events = self::$DI['app']['EM']->getRepository('Phraseanet:WebhookEventDelivery')->findUndeliveredEvents();
$events = self::$DI['app']['orm.em']->getRepository('Phraseanet:WebhookEventDelivery')->findUndeliveredEvents();
$this->assertCount(1, $events);
}
}

View File

@@ -6,7 +6,7 @@ class WebhookEventRepositoryTest extends \PhraseanetTestCase
{
public function testFindUnprocessedEvents()
{
$events = self::$DI['app']['EM']->getRepository('Phraseanet:WebhookEvent')->findUnprocessedEvents();
$events = self::$DI['app']['orm.em']->getRepository('Phraseanet:WebhookEvent')->findUnprocessedEvents();
$this->assertCount(1, $events);
}
}