Example #1
0
    def iter_unread_messages(self):
        with self.browser:
            url = self.browser.get_root_feed_url()
            for article in Newsfeed(url, rssid).iter_entries():
                id = url2id(article.link)
                thread = None

                try:
                    last_seen_id = self.storage.get('seen',
                                                    default={})[id2topic(id)]
                except KeyError:
                    last_seen_id = 0

                child = None
                iterator = self.browser.riter_posts(id, last_seen_id)
                if self.config['thread_unread_messages'].get() > 0:
                    iterator = limit(
                        iterator, self.config['thread_unread_messages'].get())
                for post in iterator:
                    if not thread:
                        thread = Thread('%s.%s' %
                                        (post.forum_id, post.topic_id))
                    message = self._post2message(thread, post)

                    if child:
                        message.children.append(child)
                        child.parent = message

                    if post.parent:
                        message.parent = Message(thread=thread, id=post.parent)
                    else:
                        thread.root = message
                    yield message
Example #2
0
    def iter_unread_messages(self):
        with self.browser:
            url = self.browser.get_root_feed_url()
            for article in Newsfeed(url, rssid).iter_entries():
                id = url2id(article.link)
                thread = None

                try:
                    last_seen_id = self.storage.get('seen', default={})[id2topic(id)]
                except KeyError:
                    last_seen_id = 0

                child = None
                iterator = self.browser.riter_posts(id, last_seen_id)
                if self.config['thread_unread_messages'].get() > 0:
                    iterator = limit(iterator, self.config['thread_unread_messages'].get())
                for post in iterator:
                    if not thread:
                        thread = Thread('%s.%s' % (post.forum_id, post.topic_id))
                    message = self._post2message(thread, post)

                    if child:
                        message.children.append(child)
                        child.parent = message

                    if post.parent:
                        message.parent = Message(thread=thread,
                                                 id=post.parent)
                    else:
                        thread.root = message
                    yield message
Example #3
0
 def test_latest(self):
     l = list(
         limit(self.backend.iter_resources([BaseVideo], [u'latest_nsfw']),
               100))
     self.assertTrue(len(l) > 0)
     v = l[0]
     self.backend.fillobj(v, ('url', ))
     self.assertTrue(v.url and v.url.startswith('http://'),
                     'URL for video "%s" not found: %s' % (v.id, v.url))
Example #4
0
    def test_search(self):
        self.assertTrue(len(self.backend.search_videos('anus', nsfw=False)) == 0)

        l = list(limit(self.backend.search_videos('anus', nsfw=True), 100))
        self.assertTrue(len(l) > 0)
        v = l[0]
        self.backend.fillobj(v, ('url',))
        self.assertTrue(v.url and v.url.startswith('http://'), 'URL for video "%s" not found: %s' % (v.id, v.url))
        r = self.backend.browser.open(v.url, stream=True)
        self.assertTrue(r.status_code == 200)
Example #5
0
    def test_search(self):
        self.assertTrue(len(self.backend.search_videos('anus', nsfw=False)) == 0)

        l = list(limit(self.backend.search_videos('anus', nsfw=True), 100))
        self.assertTrue(len(l) > 0)
        v = l[0]
        self.backend.fillobj(v, ('url',))
        self.assertTrue(v.url and v.url.startswith('http://'), 'URL for video "%s" not found: %s' % (v.id, v.url))
        r = self.backend.browser.open(v.url, stream=True)
        self.assertTrue(r.status_code == 200)
Example #6
0
 def test_latest(self):
     l = list(limit(self.backend.iter_resources([BaseVideo], [u'latest_nsfw']), 100))
     self.assertTrue(len(l) > 0)
     v = l[0]
     self.backend.fillobj(v, ('url',))
     self.assertTrue(v.url and v.url.startswith('http://'), 'URL for video "%s" not found: %s' % (v.id, v.url))
Example #7
0
 def test_new_messages(self):
     for message in limit(self.backend.iter_unread_messages(), 10):
         pass
Example #8
0
 def test_new_messages(self):
     for message in limit(self.backend.iter_unread_messages(), 10):
         pass