def test_handle_foods_got_max_calories(self): cmndr = Commander() foodstore.registerFoodStoreCommands(cmndr) # foodstore.register_handle_foods(cmndr) userstore.register_user_commands(cmndr) request_body = {'message': {'date': 1542830400, 'from': {u'id': 123}}} myutils.handle_message(cmndr, u'/set_max_calories', request_body, ['2010']) result = myutils.handle_message(cmndr, u'\ud83c\udf6a', request_body, []) assert result == ['I got your message! (but I do not know how to answer)']
def test_handle_foods_multiple_foods(self): cmndr = Commander() foodstore.registerFoodStoreCommands(cmndr) # foodstore.register_handle_foods(cmndr) userstore.register_user_commands(cmndr) request_body = {'message': {'date': 1542830400, 'from': {u'id': 123}}} myutils.handle_message(cmndr, u'/add_food_default', request_body, [u'\U0001f36b', u'100']) myutils.handle_message(cmndr, u'/set_max_calories', request_body, ['2010']) result = myutils.handle_message(cmndr, u'\U0001f36b\U0001f36b', request_body, []) assert result == ['Calories counted 200/2010']
def test_handle_foods_default_food(self): cmndr = Commander() foodstore.registerFoodStoreCommands(cmndr) # foodstore.register_handle_foods(cmndr) userstore.register_user_commands(cmndr) request_body = {'message': {'date': 1542830400, 'from': {u'id': 123}}} myutils.handle_message(cmndr, u'/add_food_default', request_body, [u'\ud83c\udf6a', u'100']) myutils.handle_message(cmndr, u'/add_food', request_body, [u'\ud83c\udf6a', u'50']) myutils.handle_message(cmndr, u'/add_food', request_body, [u'\ud83c\udf6b', u'50']) myutils.handle_message(cmndr, u'/add_food_default', request_body, [u'\ud83c\udf6c', u'100']) myutils.handle_message(cmndr, u'/set_max_calories', request_body, ['2010']) result = myutils.handle_message(cmndr, u'here is what I ate: \ud83c\udf6a\ud83c\udf6c', request_body, []) result = myutils.handle_message(cmndr, u'and again: \ud83c\udf6c', request_body, []) assert result == ['Calories counted 250/2010']
def test_set_max_cal_commander(self): cmndr = Commander() userstore.register_user_commands(cmndr) request_body = { 'message': { 'from': { 'first_name': 'igor', 'id': '777' } } } set_reply = cmndr.execute('/set_max_calories', request_body, ['2000']) get_reply = cmndr.execute('/show_max_calories', request_body) assert set_reply == 'igor, max calories were updated.' assert get_reply == 'igor, your max calories is 2000'
def test_reply_max_cal_comndr(self): cmndr = Commander() userstore.register_user_commands(cmndr) request_body = { 'message': { 'from': { 'first_name': 'igor', 'id': '777' } } } show_reply = cmndr.execute('/show_max_calories', request_body) assert show_reply == 'igor, sorry but you didn\'t set max calories.' cmndr.execute('/set_max_calories', request_body, ['4000']) show_reply1 = cmndr.execute('/show_max_calories', request_body) assert show_reply1 == 'igor, your max calories is 4000'
def test_set_max_cal_commander_wrong(self): cmndr = Commander() userstore.register_user_commands(cmndr) request_body = { 'message': { 'from': { 'first_name': 'igor', 'id': '777' } } } set_reply = cmndr.execute('/set_max_calories', request_body, []) assert set_reply == 'Didn\'t fully understand. Should be like: /set_max_calories 1800' set_reply = cmndr.execute('/set_max_calories', request_body, ['fdsd']) assert set_reply == 'Didn\'t fully understand. Should be like: /set_max_calories 1800' set_reply = cmndr.execute('/set_max_calories', request_body, ['200', '2002']) assert set_reply == 'Didn\'t fully understand. Should be like: /set_max_calories 1800'
import myutils import botenabler import coffeestore import userstore import waterstore from commander import Commander TOKEN = bottoken.get_token() BASE_URL = 'https://api.telegram.org/bot' + TOKEN + '/' commander = Commander() botenabler.register_user_commands(commander) foodstore.registerFoodStoreCommands(commander) coffeestore.registerCoffeeCommands(commander) userstore.register_user_commands(commander) waterstore.registerWaterCommands(commander) # ================================ class MeHandler(webapp2.RequestHandler): def get(self): urlfetch.set_default_fetch_deadline(60) self.response.write( json.dumps(json.load(urllib2.urlopen(BASE_URL + 'getMe')))) class GetUpdatesHandler(webapp2.RequestHandler): def get(self): urlfetch.set_default_fetch_deadline(60)