def get_filter(self): """ Override this method for custom filter. By default returns a filter with the bot's authenticated user ID in the follow list. Example: .. code-block:: python return TweetFilter(track=['hello'], follow=['<some_user_id>'])` """ return TweetFilter(follow=[str(self.client.get_current_user().id)])
def get_merged_filter(self): """ Return merged filter from list of handlers :return: merged filter :rtype: :class:`~responsebot.models.TweetFilter` """ track = set() follow = set() for handler in self.handlers: track.update(handler.filter.track) follow.update(handler.filter.follow) return TweetFilter(track=list(track), follow=list(follow))
def test_match_user_stream_no_track(self): self.filter = TweetFilter(track=[]) match = Tweet({ 'text': 'keyword text', 'entities': {}, 'user': { 'id': 1 } }) unmatched = Tweet({ 'text': 'text otherkey', 'entities': {}, 'user': { 'id': 1 } }) self.assertTrue(self.filter.match_tweet(match, user_stream=True)) self.assertTrue(self.filter.match_tweet(unmatched, user_stream=True))
def setUp(self): self.filter = TweetFilter(track=['keyword'], follow=[123])
def get_filter(self): return TweetFilter(track=['@whoisbpd'])