def test_get_entities(self, monkeypatch): monkeypatch.setattr('libturpial.lib.interfaces.protocol.Protocol.initialize_http', lambda x: None) protocol = Protocol() protocol.hashtags_url = 'http://hashtags.url.com' status = { 'text': '@lorem ipsum @foobar, #somehashtag, a !group, more #hashtags and even a valid URL http://example.com.' } entities = protocol.get_entities(status) assert len(entities['urls']) == 1 assert isinstance(entities['urls'][0], Entity) assert entities['urls'][0].url == 'http://example.com' assert len(entities['hashtags']) == 2 assert isinstance(entities['hashtags'][0], Entity) assert '#somehashtag' in entities['hashtags'][0].display_text assert '#hashtags' in entities['hashtags'][1].display_text assert len(entities['mentions']) == 2 assert isinstance(entities['mentions'][0], Entity) assert entities['mentions'][0].display_text == '@lorem' assert entities['mentions'][1].display_text == '@foobar' assert len(entities['groups']) == 0
def test_get_entities(self, monkeypatch): monkeypatch.setattr( 'libturpial.lib.interfaces.protocol.Protocol.initialize_http', lambda x: None) protocol = Protocol() protocol.hashtags_url = 'http://hashtags.url.com' status = { 'text': '@lorem ipsum @foobar, #somehashtag, a !group, more #hashtags and even a valid URL http://example.com.' } entities = protocol.get_entities(status) assert len(entities['urls']) == 1 assert isinstance(entities['urls'][0], Entity) assert entities['urls'][0].url == 'http://example.com' assert len(entities['hashtags']) == 2 assert isinstance(entities['hashtags'][0], Entity) assert '#somehashtag' in entities['hashtags'][0].display_text assert '#hashtags' in entities['hashtags'][1].display_text assert len(entities['mentions']) == 2 assert isinstance(entities['mentions'][0], Entity) assert entities['mentions'][0].display_text == '@lorem' assert entities['mentions'][1].display_text == '@foobar' assert len(entities['groups']) == 0
def get_entities(self, status): entities = Protocol.get_entities(self, status) for item in self.GROUP_PATTERN.findall(status['text']): url = "%s/%s" % (self.groups_url, item[1:]) entities['groups'].append(Entity(self.account_id, url, item, item)) return entities