示例#1
0
文件: tests.py 项目: mahdiyar/Feedly
    def test_add_love(self):
        # disable the follow notifications
        user_id = self.bogus_user.id
        self.set_setting(user_id, LoveVerb,
                         dict(notify_mobile=False, enabled=False))

        love = Love.objects.all()[:10][0]
        love.created_at = datetime.datetime.now()
        love.influencer_id = user_id
        influencer_feed = NotificationFeed(user_id)
        love.entity.created_by_id = self.bogus_user2.id
        creator_feed = NotificationFeed(self.bogus_user2.id)
        # we want to write two notifications
        # someone loved your find
        # someone loved your love
        notification_feedly = NotificationFeedly()
        # clean slate for testing
        influencer_feed.delete()
        creator_feed.delete()

        # comparison activity
        activity = love.create_activity()
        notification_feedly.add_love(love)

        # influencer is equal to user_id and shouldnt contain the activity
        assert not influencer_feed.contains(activity)

        # creator feed should contain since the settings hasn't been disabled
        creator_activity = copy.deepcopy(activity)
        creator_activity.extra_context['find'] = True
        assert creator_feed.contains(creator_activity)
示例#2
0
文件: tests.py 项目: etel/Feedly
    def test_follow_disabled(self):
        '''
        Verify that follows don't show up when you disable them in the settings
        '''
        from user.models import UserNotificationSetting
        # disable the follow notifications
        user_id = self.bogus_user.id
        self.set_setting(
            user_id, FollowVerb, dict(notify_mobile=False, enabled=False))

        # verify that we disabled
        enabled = UserNotificationSetting.objects.enabled_for(
            user_id, FollowVerb)
        self.assertFalse(enabled)

        notification_feedly = NotificationFeedly()
        follows = Follow.objects.all()[:10]

        # clear the feed
        notification_feed = NotificationFeed(user_id)
        notification_feed.delete()

        # make sure that notifications for follows don't show up
        for follow in follows:
            follow.user_id = self.bogus_user2.id
            follow.target_id = user_id
            follow.created_at = datetime.datetime.now()
            activity = follow.create_activity()
            feed = notification_feedly._follow(follow)
            if feed:
                assert not feed.contains(activity)

        # the count should be zero
        self.assertEqual(notification_feed.count_unseen(), 0)
示例#3
0
文件: tests.py 项目: shaj3/Feedly
    def test_love(self):
        love = Love.objects.all()[:10][0]
        love.created_at = datetime.datetime.now()
        love.influencer_id = self.bogus_user.id
        influencer_feed = NotificationFeed(self.bogus_user.id)
        love.entity.created_by_id = self.bogus_user2.id
        creator_feed = NotificationFeed(self.bogus_user2.id)
        # we want to write two notifications
        # someone loved your find
        # someone loved your love
        notification_feedly = NotificationFeedly()
        # clean slate for testing
        influencer_feed.delete()
        creator_feed.delete()

        # comparison activity
        activity = love.create_activity()
        notification_feedly.add_love(love)

        # influencer feed
        assert influencer_feed.contains(activity)

        # creator feed
        creator_activity = copy.deepcopy(activity)
        creator_activity.extra_context['find'] = True
        assert creator_feed.contains(creator_activity)
示例#4
0
文件: tests.py 项目: mahdiyar/Feedly
    def test_love(self):
        love = Love.objects.all()[:10][0]
        love.created_at = datetime.datetime.now()
        love.influencer_id = self.bogus_user.id
        influencer_feed = NotificationFeed(self.bogus_user.id)
        love.entity.created_by_id = self.bogus_user2.id
        creator_feed = NotificationFeed(self.bogus_user2.id)
        # we want to write two notifications
        # someone loved your find
        # someone loved your love
        notification_feedly = NotificationFeedly()
        # clean slate for testing
        influencer_feed.delete()
        creator_feed.delete()

        # comparison activity
        activity = love.create_activity()
        notification_feedly.add_love(love)

        # influencer feed
        assert influencer_feed.contains(activity)

        # creator feed
        creator_activity = copy.deepcopy(activity)
        creator_activity.extra_context['find'] = True
        assert creator_feed.contains(creator_activity)
示例#5
0
文件: tests.py 项目: etel/Feedly
    def test_add_love(self):
        # disable the follow notifications
        user_id = self.bogus_user.id
        self.set_setting(
            user_id, LoveVerb, dict(notify_mobile=False, enabled=False))

        love = Love.objects.all()[:10][0]
        love.created_at = datetime.datetime.now()
        love.influencer_id = user_id
        influencer_feed = NotificationFeed(user_id)
        love.entity.created_by_id = self.bogus_user2.id
        creator_feed = NotificationFeed(self.bogus_user2.id)
        # we want to write two notifications
        # someone loved your find
        # someone loved your love
        notification_feedly = NotificationFeedly()
        # clean slate for testing
        influencer_feed.delete()
        creator_feed.delete()

        # comparison activity
        activity = love.create_activity()
        notification_feedly.add_love(love)

        # influencer is equal to user_id and shouldnt contain the activity
        assert not influencer_feed.contains(activity)

        # creator feed should contain since the settings hasn't been disabled
        creator_activity = copy.deepcopy(activity)
        creator_activity.extra_context['find'] = True
        assert creator_feed.contains(creator_activity)
示例#6
0
文件: tests.py 项目: mahdiyar/Feedly
    def test_follow_disabled(self):
        '''
        Verify that follows don't show up when you disable them in the settings
        '''
        from user.models import UserNotificationSetting
        # disable the follow notifications
        user_id = self.bogus_user.id
        self.set_setting(user_id, FollowVerb,
                         dict(notify_mobile=False, enabled=False))

        # verify that we disabled
        enabled = UserNotificationSetting.objects.enabled_for(
            user_id, FollowVerb)
        self.assertFalse(enabled)

        notification_feedly = NotificationFeedly()
        follows = Follow.objects.all()[:10]

        # clear the feed
        notification_feed = NotificationFeed(user_id)
        notification_feed.delete()

        # make sure that notifications for follows don't show up
        for follow in follows:
            follow.user_id = self.bogus_user2.id
            follow.target_id = user_id
            follow.created_at = datetime.datetime.now()
            activity = follow.create_activity()
            feed = notification_feedly._follow(follow)
            if feed:
                assert not feed.contains(activity)

        # the count should be zero
        self.assertEqual(notification_feed.count_unseen(), 0)
示例#7
0
文件: tests.py 项目: shaj3/Feedly
    def test_add_to_list(self):
        notification_feedly = NotificationFeedly()
        notification_feed = NotificationFeed(self.bogus_user.id)
        list_items = ListItem.objects.all()[:1]

        for list_item in list_items:
            list_item.entity.created_by_id = self.bogus_user.id
            notification_feedly.add_to_list(list_item)
            activity = list_item.create_activity()

        assert notification_feed.contains(activity)
示例#8
0
文件: tests.py 项目: mahdiyar/Feedly
    def test_add_to_list(self):
        notification_feedly = NotificationFeedly()
        notification_feed = NotificationFeed(self.bogus_user.id)
        list_items = ListItem.objects.all()[:1]

        for list_item in list_items:
            list_item.entity.created_by_id = self.bogus_user.id
            notification_feedly.add_to_list(list_item)
            activity = list_item.create_activity()

        assert notification_feed.contains(activity)
示例#9
0
文件: tests.py 项目: shaj3/Feedly
    def test_performance(self):
        '''
        Test the performance of the feedly system for multiple add_loves
        '''
        start = datetime.datetime.now()
        notification_feedly = NotificationFeedly()

        loves = Love.objects.all()[:10]
        print loves.count()
        for love in loves:
            # run without the task
            notification_feedly._add_love(love)
        end = datetime.datetime.now()
        print end - start
示例#10
0
文件: tests.py 项目: mahdiyar/Feedly
    def test_performance(self):
        '''
        Test the performance of the feedly system for multiple add_loves
        '''
        start = datetime.datetime.now()
        notification_feedly = NotificationFeedly()

        loves = Love.objects.all()[:10]
        print loves.count()
        for love in loves:
            # run without the task
            notification_feedly._add_love(love)
        end = datetime.datetime.now()
        print end - start
示例#11
0
文件: tests.py 项目: shaj3/Feedly
    def test_follow(self):
        notification_feedly = NotificationFeedly()
        follows = Follow.objects.all()[:10]

        notification_feed = NotificationFeed(self.bogus_user.id)
        notification_feed.delete()

        for follow in follows:
            follow.user_id = self.bogus_user2.id
            follow.target_id = self.bogus_user.id
            follow.created_at = datetime.datetime.now()
            activity = follow.create_activity()
            feed = notification_feedly._follow(follow)
            assert feed.contains(activity)

        # influencer feed
        self.assertEqual(notification_feed.count_unseen(), 1)
示例#12
0
文件: tests.py 项目: mahdiyar/Feedly
    def test_follow(self):
        notification_feedly = NotificationFeedly()
        follows = Follow.objects.all()[:10]

        notification_feed = NotificationFeed(self.bogus_user.id)
        notification_feed.delete()

        for follow in follows:
            follow.user_id = self.bogus_user2.id
            follow.target_id = self.bogus_user.id
            follow.created_at = datetime.datetime.now()
            activity = follow.create_activity()
            feed = notification_feedly._follow(follow)
            assert feed.contains(activity)

        # influencer feed
        self.assertEqual(notification_feed.count_unseen(), 1)
示例#13
0
文件: tests.py 项目: shaj3/Feedly
    def test_duplicates(self):
        '''
        The task system can often attempt to duplicate an insert
        This should raise an error to prevent weird data
        '''
        notification_feedly = NotificationFeedly()
        notification_feed = NotificationFeed(self.bogus_user.id)
        notification_feed.delete()

        love = Love.objects.all()[:10][0]

        for x in range(3):
            love.influencer_id = self.bogus_user.id
            notification_feedly.add_love(love)

        for aggregated in notification_feed[:notification_feed.max_length]:
            activity_count = aggregated.activity_count
            self.assertEqual(activity_count, 1)
示例#14
0
文件: tests.py 项目: mahdiyar/Feedly
    def test_duplicates(self):
        '''
        The task system can often attempt to duplicate an insert
        This should raise an error to prevent weird data
        '''
        notification_feedly = NotificationFeedly()
        notification_feed = NotificationFeed(self.bogus_user.id)
        notification_feed.delete()

        love = Love.objects.all()[:10][0]

        for x in range(3):
            love.influencer_id = self.bogus_user.id
            notification_feedly.add_love(love)

        for aggregated in notification_feed[:notification_feed.max_length]:
            activity_count = aggregated.activity_count
            self.assertEqual(activity_count, 1)
示例#15
0
文件: tests.py 项目: shaj3/Feedly
    def test_duplicate_love_unlove(self):
        '''
        Test to verify that we dont end up with multiple notifications
        When users love and unlove the same data
        '''
        notification_feedly = NotificationFeedly()
        notification_feed = NotificationFeed(self.bogus_user.id)
        notification_feed.delete()

        love = Love.objects.all()[:10][0]

        for x in range(3):
            love.id = x
            love.influencer_id = self.bogus_user.id
            notification_feedly.add_love(love)

        for aggregated in notification_feed[:notification_feed.max_length]:
            activity_count = aggregated.activity_count
            self.assertEqual(activity_count, 1)
示例#16
0
文件: tests.py 项目: mahdiyar/Feedly
    def test_duplicate_love_unlove(self):
        '''
        Test to verify that we dont end up with multiple notifications
        When users love and unlove the same data
        '''
        notification_feedly = NotificationFeedly()
        notification_feed = NotificationFeed(self.bogus_user.id)
        notification_feed.delete()

        love = Love.objects.all()[:10][0]

        for x in range(3):
            love.id = x
            love.influencer_id = self.bogus_user.id
            notification_feedly.add_love(love)

        for aggregated in notification_feed[:notification_feed.max_length]:
            activity_count = aggregated.activity_count
            self.assertEqual(activity_count, 1)
示例#17
0
文件: tasks.py 项目: mahdiyar/Feedly
def notification_follow(follow):
    from feedly.feed_managers.notification_feedly import NotificationFeedly
    feedly = NotificationFeedly()
    feedly._follow(follow)
示例#18
0
文件: tasks.py 项目: atefzed/Feedly
def notification_follow(follow):
    from feedly.feed_managers.notification_feedly import NotificationFeedly
    feedly = NotificationFeedly()
    feedly._follow(follow)
示例#19
0
文件: tasks.py 项目: mahdiyar/Feedly
def notification_add_love(love):
    from feedly.feed_managers.notification_feedly import NotificationFeedly
    feedly = NotificationFeedly()
    feedly._add_love(love)
示例#20
0
文件: tasks.py 项目: atefzed/Feedly
def notification_add_to_list(list_item):
    from feedly.feed_managers.notification_feedly import NotificationFeedly
    feedly = NotificationFeedly()
    feedly._add_to_list(list_item)
示例#21
0
文件: tasks.py 项目: mahdiyar/Feedly
def notification_add_to_list(list_item):
    from feedly.feed_managers.notification_feedly import NotificationFeedly
    feedly = NotificationFeedly()
    feedly._add_to_list(list_item)
示例#22
0
文件: tasks.py 项目: atefzed/Feedly
def notification_add_love(love):
    from feedly.feed_managers.notification_feedly import NotificationFeedly
    feedly = NotificationFeedly()
    feedly._add_love(love)