Beispiel #1
0
    def test_feed_item_deleted(self):
        first_ad_spot = 2
        with fakeads(first_ad_index=first_ad_spot):

            ids = None

            def get_content():
                return [S(id=c) for c in ids]

            ids_1 = [1, 2, 3, 4, 5]

            def getitem(t, ctx):
                return t

            sf = SocialFeed('foo_test', 'feed', get_content, getitem)

            # ensure ads are inserted
            sf.new_ids(ids_1)
            ids = ids_1
            feed = list(sf.get_iterator())

            def show():
                #print '$$$$ feed:
                from pprint import pprint
                pprint(feed)

            show()
            assert feed_trends.isad(feed[2]), feed[2]

            # ensure the ad moves as new items come in
            ids_2 = [6, 7, 8, 1, 2, 4, 5]
            sf.new_ids(ids_2)
            ids = ids_2

            feed = list(sf.get_iterator())
            show()
            assert feed_trends.isad(feed[5])

            # ensure that new ads appear
            ids_3 = [11, 12, 13, 14, 15, 16, 6, 7, 8, 1, 2, 4, 5]
            sf.new_ids(ids_3)
            ids = ids_3

            feed = list(sf.get_iterator())
            show()
            assert feed_trends.isad(feed[1]), feed[1]
            assert feed_trends.isad(feed[-3])

            # no more than 2 ads will ever appear
            ids_4 = [101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111
                     ] + ids_3
            sf.new_ids(ids_4)
            ids = ids_4
            feed = list(sf.get_iterator())
            self.assertEquals(
                2, sum(1 if feed_trends.isad(a) else 0 for a in feed))
Beispiel #2
0
    def test_feed_item_deleted(self):
        first_ad_spot = 2
        with fakeads(first_ad_index=first_ad_spot):

            ids=None
            def get_content():
                return [S(id=c) for c in ids]

            ids_1 = [1, 2, 3, 4, 5]

            def getitem(t, ctx):
                return t

            sf = SocialFeed('foo_test', 'feed', get_content, getitem)

            # ensure ads are inserted
            sf.new_ids(ids_1); ids = ids_1
            feed = list(sf.get_iterator())

            def show():
                #print '$$$$ feed:
                from pprint import pprint
                pprint(feed)

            show()
            assert feed_trends.isad(feed[2]), feed[2]

            # ensure the ad moves as new items come in
            ids_2 = [6, 7, 8, 1, 2, 4, 5]
            sf.new_ids(ids_2); ids = ids_2

            feed = list(sf.get_iterator())
            show()
            assert feed_trends.isad(feed[5])

            # ensure that new ads appear
            ids_3 = [11, 12, 13, 14, 15, 16, 6, 7, 8, 1, 2, 4, 5]
            sf.new_ids(ids_3); ids = ids_3

            feed = list(sf.get_iterator())
            show()
            assert feed_trends.isad(feed[1]), feed[1]
            assert feed_trends.isad(feed[-3])

            # no more than 2 ads will ever appear
            ids_4 = [101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111] + ids_3
            sf.new_ids(ids_4); ids = ids_4
            feed = list(sf.get_iterator())
            self.assertEquals(2, sum(1 if feed_trends.isad(a) else 0 for a in feed))