mirror of
https://github.com/python-telegram-bot/python-telegram-bot.git
synced 2025-03-16 12:25:45 +01:00
Improve unitests coverage
This commit is contained in:
parent
5b8efe0c14
commit
53a574bbbb
4 changed files with 48 additions and 16 deletions
|
@ -51,16 +51,14 @@ class Bot(TelegramObject):
|
|||
def __init__(self, token, base_url=None, base_file_url=None, request=None):
|
||||
self.token = self._validate_token(token)
|
||||
|
||||
if not base_url:
|
||||
self.base_url = 'https://api.telegram.org/bot{0}'.format(self.token)
|
||||
else:
|
||||
self.base_url = base_url + self.token
|
||||
if base_url is None:
|
||||
base_url = 'https://api.telegram.org/bot'
|
||||
|
||||
if not base_file_url:
|
||||
self.base_file_url = 'https://api.telegram.org/file/bot{0}'.format(self.token)
|
||||
else:
|
||||
self.base_file_url = base_file_url + self.token
|
||||
if base_file_url is None:
|
||||
base_file_url = 'https://api.telegram.org/file/bot'
|
||||
|
||||
self.base_url = str(base_url) + str(self.token)
|
||||
self.base_file_url = str(base_file_url) + str(self.token)
|
||||
self.bot = None
|
||||
self._request = request or Request()
|
||||
self.logger = logging.getLogger(__name__)
|
||||
|
@ -782,11 +780,6 @@ class Bot(TelegramObject):
|
|||
|
||||
data = {'chat_id': chat_id, 'game_short_name': game_short_name}
|
||||
|
||||
if parse_mode is not None:
|
||||
data['parse_mode'] = parse_mode
|
||||
if disable_web_page_preview is not None:
|
||||
data['disable_web_page_preview'] = disable_web_page_preview
|
||||
|
||||
return url, data
|
||||
|
||||
@log
|
||||
|
|
|
@ -67,6 +67,17 @@ class BotTest(BaseTest, unittest.TestCase):
|
|||
self.assertEqual(message.text, u'Моё судно на воздушной подушке полно угрей')
|
||||
self.assertTrue(isinstance(message.date, datetime))
|
||||
|
||||
@flaky(3, 1)
|
||||
@timeout(10)
|
||||
def test_sendMessage_no_web_page_preview(self):
|
||||
message = self._bot.sendMessage(
|
||||
chat_id=self._chat_id,
|
||||
text='Моё судно на воздушной подушке полно угрей',
|
||||
disable_web_page_preview=True)
|
||||
|
||||
self.assertTrue(self.is_json(message.to_json()))
|
||||
self.assertEqual(message.text, u'Моё судно на воздушной подушке полно угрей')
|
||||
|
||||
@flaky(3, 1)
|
||||
@timeout(10)
|
||||
def testGetUpdates(self):
|
||||
|
@ -183,6 +194,13 @@ class BotTest(BaseTest, unittest.TestCase):
|
|||
self.assertTrue(self.is_json(upf.to_json()))
|
||||
self.assertEqual(upf.photos[0][0].file_size, 12421)
|
||||
|
||||
@flaky(3, 1)
|
||||
@timeout(10)
|
||||
def test_get_one_user_profile_photo(self):
|
||||
upf = self._bot.getUserProfilePhotos(user_id=self._chat_id, offset=0)
|
||||
self.assertTrue(self.is_json(upf.to_json()))
|
||||
self.assertEqual(upf.photos[0][0].file_size, 12421)
|
||||
|
||||
def _test_invalid_token(self, token):
|
||||
self.assertRaisesRegexp(telegram.error.InvalidToken, 'Invalid token', telegram.Bot, token)
|
||||
|
||||
|
@ -304,6 +322,27 @@ class BotTest(BaseTest, unittest.TestCase):
|
|||
self.assertEqual(user.username, 'PythonTelegramBot')
|
||||
self.assertEqual(user.name, '@PythonTelegramBot')
|
||||
|
||||
@flaky(3, 1)
|
||||
@timeout(10)
|
||||
def test_info(self):
|
||||
# tests the Bot.info decorator and associated funcs
|
||||
self.assertEqual(self._bot.id, 133505823)
|
||||
self.assertEqual(self._bot.first_name, 'PythonTelegramBot')
|
||||
self.assertEqual(self._bot.last_name, '')
|
||||
self.assertEqual(self._bot.username, 'PythonTelegramBot')
|
||||
self.assertEqual(self._bot.name, '@PythonTelegramBot')
|
||||
|
||||
@flaky(3, 1)
|
||||
@timeout(10)
|
||||
def test_send_contact(self):
|
||||
phone = '+3-54-5445445'
|
||||
name = 'name'
|
||||
last = 'last'
|
||||
message = self._bot.send_contact(self._chat_id, phone, name, last)
|
||||
self.assertEqual(phone.replace('-', ''), message.contact.phone_number)
|
||||
self.assertEqual(name, message.contact.first_name)
|
||||
self.assertEqual(last, message.contact.last_name)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
|
|
|
@ -58,7 +58,7 @@ class DocumentTest(BaseTest, unittest.TestCase):
|
|||
@flaky(3, 1)
|
||||
@timeout(10)
|
||||
def test_send_document_png_file(self):
|
||||
message = self._bot.sendDocument(self._chat_id, self.document_file)
|
||||
message = self._bot.sendDocument(self._chat_id, self.document_file, caption='caption text')
|
||||
|
||||
document = message.document
|
||||
|
||||
|
|
|
@ -45,7 +45,7 @@ class VenueTest(BaseTest, unittest.TestCase):
|
|||
'foursquare_id': self.foursquare_id
|
||||
}
|
||||
|
||||
def test_sticker_de_json(self):
|
||||
def test_venue_de_json(self):
|
||||
sticker = telegram.Venue.de_json(self.json_dict, self._bot)
|
||||
|
||||
self.assertTrue(isinstance(sticker.location, telegram.Location))
|
||||
|
@ -53,7 +53,7 @@ class VenueTest(BaseTest, unittest.TestCase):
|
|||
self.assertEqual(sticker.address, self._address)
|
||||
self.assertEqual(sticker.foursquare_id, self.foursquare_id)
|
||||
|
||||
def test_sticker_to_json(self):
|
||||
def test_venue_to_json(self):
|
||||
sticker = telegram.Venue.de_json(self.json_dict, self._bot)
|
||||
|
||||
self.assertTrue(self.is_json(sticker.to_json()))
|
||||
|
|
Loading…
Add table
Reference in a new issue