From 3382fed370503ea1468862d43a1bbdc3587f23bc Mon Sep 17 00:00:00 2001 From: Romain Neutron Date: Fri, 25 Oct 2013 18:51:05 +0200 Subject: [PATCH] Add missing feed item repository test --- lib/Alchemy/Phrasea/Controller/Permalink.php | 2 +- .../Repositories/FeedItemRepositoryTest.php | 41 +++++++++++++++++++ 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 tests/Doctrine/Tests/Repositories/FeedItemRepositoryTest.php diff --git a/lib/Alchemy/Phrasea/Controller/Permalink.php b/lib/Alchemy/Phrasea/Controller/Permalink.php index f9678bd0b0..5464d7a154 100644 --- a/lib/Alchemy/Phrasea/Controller/Permalink.php +++ b/lib/Alchemy/Phrasea/Controller/Permalink.php @@ -113,7 +113,7 @@ class Permalink extends AbstractDelivery return $response; }; - $controllers->get('/v1/{sbas_id}/{record_id}/caption/', function(PhraseaApplication $app, Request $request, $sbas_id, $record_id) { + $controllers->get('/v1/{sbas_id}/{record_id}/caption/', function(PhraseaApplication $app, Request $request, $sbas_id, $record_id) use ($retrieveRecord) { $token = $request->query->get('token'); $databox = $app['phraseanet.appbox']->get_databox((int) $sbas_id); diff --git a/tests/Doctrine/Tests/Repositories/FeedItemRepositoryTest.php b/tests/Doctrine/Tests/Repositories/FeedItemRepositoryTest.php new file mode 100644 index 0000000000..b59e1fb466 --- /dev/null +++ b/tests/Doctrine/Tests/Repositories/FeedItemRepositoryTest.php @@ -0,0 +1,41 @@ +insertOneFeedItem(self::$DI['user'], true); + $record = $item->getRecord(self::$DI['app']); + $this->assertTrue(self::$DI['app']['EM']->getRepository('Entities\FeedItem')->isRecordInPublicFeed(self::$DI['app'], $record->get_sbas_id(), $record->get_record_id())); + } + + public function testIs_record_in_public_feedInPrivateFeed() + { + $record = $this->insertOneFeedItem(self::$DI['user'], false)->getRecord(self::$DI['app']); + $this->assertFalse(self::$DI['app']['EM']->getRepository('Entities\FeedItem')->isRecordInPublicFeed(self::$DI['app'], $record->get_sbas_id(), $record->get_record_id())); + } + + public function testLoadLatestItems() + { + $this->insertOneFeedItem(self::$DI['user'], true, 2); + $this->assertCount(2, self::$DI['app']['EM']->getRepository('Entities\FeedItem')->loadLatest(self::$DI['app'], 20)); + } + + public function testLoadLatestItemsLessItems() + { + $this->insertOneFeedItem(self::$DI['user'], true, 2); + $this->assertCount(1, self::$DI['app']['EM']->getRepository('Entities\FeedItem')->loadLatest(self::$DI['app'], 1)); + } + + public function testLoadLatestItemsNoPublic() + { + $this->insertOneFeedItem(self::$DI['user'], false, 2); + $this->assertCount(0, self::$DI['app']['EM']->getRepository('Entities\FeedItem')->loadLatest(self::$DI['app'], 20)); + } +}