def test_get_feed_items_mix_moderated(self, tweets, instagram_posts):
        """Test the feed mix with one of the sources being moderated."""
        instagramconfig = SocialFeedConfigurationFactory.create(
            source='instagram',
            username='******',
            moderated=True)

        items = get_feed_items_mix(SocialFeedConfiguration.objects.all())

        # None of the instagram posts are moderated, so should only
        # return the twitter posts
        self.assertEquals(len(items), len(tweets))
        instagram_feed = FeedFactory.create('instagram')
        instagram_items = instagram_feed.get_items(instagramconfig)
        for item in instagram_items[:3]:
            instagramconfig.moderated_items.get_or_create_for(
                item.serialize())

        items = get_feed_items_mix(SocialFeedConfiguration.objects.all())
        self.assertEquals(len(items), len(tweets) + 3)
        # Check if the date order is correct
        last_date = None
        for item in items:
            if last_date:
                self.assertLessEqual(item.posted, last_date)
            last_date = item.posted
        self.assertEquals(len([i for i in items if i.type == 'instagram']), 3)
 def setUp(self):
     cache.clear()
     self.feedconfig = SocialFeedConfigurationFactory.create(
         source='twitter', username='******')
     self.stream = FeedFactory.create('twitter')
     self.cache_key = 'socialfeed:{}:data:{}'.format(
         'TwitterFeed', self.feedconfig.id)
 def setUp(self):
     cache.clear()
     self.feedconfig = SocialFeedConfigurationFactory.create(
         source='facebook')
     self.stream = FeedFactory.create('facebook')
     self.cache_key = 'socialfeed:{}:data:{}'.format(
         'FacebookFeed', self.feedconfig.id)
Beispiel #4
0
 def setUp(self, tweets):
     super(ModerateAllowViewTest, self).setUp()
     self.feed = FeedFactory.create('twitter')
     self.items = self.feed.get_items(self.feedconfig)
     self.post = self.items[0]
     self.url = reverse('wagtailsocialfeed:allow',
                        kwargs={
                            'pk': self.feedconfig.id,
                            'post_id': self.post.id
                        })
Beispiel #5
0
 def setUp(self, tweets):
     super(ModerateRemoveViewTest, self).setUp()
     self.feed = FeedFactory.create('twitter')
     self.items = self.feed.get_items(self.feedconfig)
     self.post = self.items[0]
     self.feedconfig.moderated_items.get_or_create_for(
         self.post.serialize())
     self.url = reverse('wagtailsocialfeed:remove',
                        kwargs={
                            'pk': self.feedconfig.id,
                            'post_id': self.post.id
                        })
    def test_serve_moderated(self, tweets):
        self.feedconfig.moderated = True
        self.feedconfig.save()

        request = self.factory.get('/pages/feed/')
        resp = self.page.serve(request)
        resp.render()
        self.assertIn('feed', resp.context_data)
        self.assertEqual(len(resp.context_data['feed']), 0)

        # Now moderate some items
        feed = FeedFactory.create('twitter')
        items = feed.get_items(self.feedconfig)
        for item in items[:3]:
            self.feedconfig.moderated_items.get_or_create_for(
                item.serialize())

        resp = self.page.serve(request)
        resp.render()
        self.assertIn('feed', resp.context_data)
        self.assertEqual(len(resp.context_data['feed']), 3)
 def setUp(self, tweets):
     self.feedconfig = SocialFeedConfigurationFactory(
         source='twitter', username='******')
     feed = FeedFactory.create('twitter')
     items = feed.get_items(self.feedconfig)
     self.item, created = self.feedconfig.moderated_items.get_or_create_for(items[0].serialize())
 def test_create(self):
     self.assertIsInstance(FeedFactory.create('twitter'), TwitterFeed)
     self.assertIsInstance(FeedFactory.create('instagram'), InstagramFeed)
     self.assertIsInstance(FeedFactory.create('facebook'), FacebookFeed)
     with self.assertRaises(NotImplementedError):
         FeedFactory.create('ello')