def test_parse_entity(self): text = (b'\\U0001f469\\u200d\\U0001f469\\u200d\\U0001f467' b'\\u200d\\U0001f467\\U0001f431http://google.com').decode('unicode-escape') entity = telegram.MessageEntity(type=telegram.MessageEntity.URL, offset=13, length=17) message = telegram.Message( message_id=1, from_user=None, date=None, chat=None, text=text, entities=[entity]) self.assertEqual(message.parse_entity(entity), 'http://google.com')
def test_text_markdown_emoji(self): text = (b'\\U0001f469\\u200d\\U0001f469\\u200d ABC').decode('unicode-escape') expected = (b'\\U0001f469\\u200d\\U0001f469\\u200d *ABC*').decode('unicode-escape') bold_entity = telegram.MessageEntity(type=telegram.MessageEntity.BOLD, offset=7, length=3) message = telegram.Message( message_id=1, from_user=None, date=None, chat=None, text=text, entities=[bold_entity]) self.assertEquals(expected, message.text_markdown)
def test_parse_entities_url_emoji(self): url = b'http://github.com/?unicode=\\u2713\\U0001f469'.decode('unicode-escape') text = 'some url' link_entity = telegram.MessageEntity(type=telegram.MessageEntity.URL, offset=0, length=8, url=url) message = telegram.Message( message_id=1, from_user=None, date=None, chat=None, text=text, entities=[link_entity]) self.assertDictEqual(message.parse_entities(), {link_entity: text}) self.assertEqual(next(iter(message.parse_entities())).url, url)
def test_parse_entity(self): text = (b'\\U0001f469\\u200d\\U0001f469\\u200d\\U0001f467' b'\\u200d\\U0001f467\\U0001f431http://google.com' ).decode('unicode-escape') entity = telegram.MessageEntity(type=telegram.MessageEntity.URL, offset=13, length=17) game = telegram.Game(self.title, self.description, self.photo, text=text, text_entities=[entity]) self.assertEqual(game.parse_text_entity(entity), 'http://google.com')
def setUp(self): self.test_entities = [ { 'length': 4, 'offset': 10, 'type': 'bold' }, { 'length': 7, 'offset': 16, 'type': 'italic' }, { 'length': 4, 'offset': 25, 'type': 'code' }, { 'length': 5, 'offset': 31, 'type': 'text_link', 'url': 'http://github.com/' }, { 'length': 3, 'offset': 41, 'type': 'pre' }, ] self.test_text = 'Test for <bold, ita_lic, code, links and pre.' self.test_message = telegram.Message( message_id=1, from_user=None, date=None, chat=None, text=self.test_text, entities=[telegram.MessageEntity(**e) for e in self.test_entities])