mirror of
https://github.com/python-telegram-bot/python-telegram-bot.git
synced 2024-11-22 15:17:00 +01:00
tests and corrections for choseninlineresult
This commit is contained in:
parent
fc73948c82
commit
d1dc32d849
2 changed files with 86 additions and 3 deletions
|
@ -22,7 +22,7 @@ This module contains a object that represents a Telegram ChosenInlineResult
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
||||||
from telegram import TelegramObject
|
from telegram import TelegramObject, User
|
||||||
|
|
||||||
|
|
||||||
class ChosenInlineResult(TelegramObject):
|
class ChosenInlineResult(TelegramObject):
|
||||||
|
@ -46,9 +46,10 @@ class ChosenInlineResult(TelegramObject):
|
||||||
def __init__(self,
|
def __init__(self,
|
||||||
result_id,
|
result_id,
|
||||||
from_user,
|
from_user,
|
||||||
query):
|
query,
|
||||||
|
**kwargs):
|
||||||
# Required
|
# Required
|
||||||
self.result_id = int(result_id)
|
self.result_id = result_id
|
||||||
self.from_user = from_user
|
self.from_user = from_user
|
||||||
self.query = query
|
self.query = query
|
||||||
|
|
||||||
|
@ -64,6 +65,8 @@ class ChosenInlineResult(TelegramObject):
|
||||||
if not data:
|
if not data:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
data['from_user'] = User.de_json(data.get('from'))
|
||||||
|
|
||||||
return ChosenInlineResult(**data)
|
return ChosenInlineResult(**data)
|
||||||
|
|
||||||
def to_dict(self):
|
def to_dict(self):
|
||||||
|
|
80
tests/test_choseninlineresult.py
Normal file
80
tests/test_choseninlineresult.py
Normal file
|
@ -0,0 +1,80 @@
|
||||||
|
#!/usr/bin/env python
|
||||||
|
#
|
||||||
|
# A library that provides a Python interface to the Telegram Bot API
|
||||||
|
# Copyright (C) 2015-2016
|
||||||
|
# Leandro Toledo de Souza <devs@python-telegram-bot.org>
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program. If not, see [http://www.gnu.org/licenses/].
|
||||||
|
|
||||||
|
"""This module contains a object that represents Tests for Telegram
|
||||||
|
ChosenInlineResult"""
|
||||||
|
|
||||||
|
import os
|
||||||
|
import unittest
|
||||||
|
import sys
|
||||||
|
sys.path.append('.')
|
||||||
|
|
||||||
|
import telegram
|
||||||
|
from tests.base import BaseTest
|
||||||
|
|
||||||
|
|
||||||
|
class ChosenInlineResultTest(BaseTest, unittest.TestCase):
|
||||||
|
"""This object represents Tests for Telegram ChosenInlineResult."""
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
|
||||||
|
user = telegram.User(1, 'First name')
|
||||||
|
|
||||||
|
self.result_id = 'result id'
|
||||||
|
self.from_user = user
|
||||||
|
self.query = 'query text'
|
||||||
|
|
||||||
|
self.json_dict = {
|
||||||
|
'result_id': self.result_id,
|
||||||
|
'from': self.from_user.to_dict(),
|
||||||
|
'query': self.query
|
||||||
|
}
|
||||||
|
|
||||||
|
def test_choseninlineresult_de_json(self):
|
||||||
|
"""Test ChosenInlineResult.de_json() method"""
|
||||||
|
print('Testing ChosenInlineResult.de_json()')
|
||||||
|
|
||||||
|
result = telegram.ChosenInlineResult.de_json(self.json_dict)
|
||||||
|
|
||||||
|
self.assertEqual(result.result_id, self.result_id)
|
||||||
|
self.assertEqual(result.from_user.to_dict(), self.from_user.to_dict())
|
||||||
|
self.assertEqual(result.query, self.query)
|
||||||
|
|
||||||
|
def test_choseninlineresult_to_json(self):
|
||||||
|
"""Test ChosenInlineResult.to_json() method"""
|
||||||
|
print('Testing ChosenInlineResult.to_json()')
|
||||||
|
|
||||||
|
result = telegram.ChosenInlineResult.de_json(self.json_dict)
|
||||||
|
|
||||||
|
self.assertTrue(self.is_json(result.to_json()))
|
||||||
|
|
||||||
|
def test_choseninlineresult_to_dict(self):
|
||||||
|
"""Test ChosenInlineResult.to_dict() method"""
|
||||||
|
print('Testing ChosenInlineResult.to_dict()')
|
||||||
|
|
||||||
|
result = telegram.ChosenInlineResult.de_json(self.json_dict).to_dict()
|
||||||
|
|
||||||
|
self.assertTrue(self.is_dict(result))
|
||||||
|
self.assertEqual(result['result_id'], self.result_id)
|
||||||
|
self.assertEqual(result['from'], self.from_user.to_dict())
|
||||||
|
self.assertEqual(result['query'], self.query)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
unittest.main()
|
Loading…
Reference in a new issue