def test_add_game_should_fail_if_not_registered(self): database = SqliteDatabase(':memory:') database_proxy.initialize(database) database.create_tables([User]) bot_mock = Mock() update_mock = Mock() update_mock.message.from_user.id = 0 self.assertEqual(ConversationHandler.END, cmd_add_game.add_game(bot_mock, update_mock)) update_mock.message.reply_text.assert_called_with('You are not registered!')
def test_add_game_should_display_error_if_no_registered_games(self): database = SqliteDatabase(':memory:') database_proxy.initialize(database) database.create_tables([User, Game]) User.create(id=111, steam_id=0, authorization_key='') admin_mock = Mock() admin_mock.user.id = 111 bot_mock = Mock() bot_mock.get_chat_administrators.return_value = [admin_mock] update_mock = Mock() update_mock.message.from_user.id = 111 self.assertEqual(ConversationHandler.END, cmd_add_game.add_game(bot_mock, update_mock)) update_mock.message.reply_text.assert_called_with("You don't have any registered games")
def test_add_game_should_fail_if_not_admin_of_group(self): database = SqliteDatabase(':memory:') database_proxy.initialize(database) database.create_tables([User]) User.create(id=111, steam_id=0, authorization_key='') admin_mock = Mock() admin_mock.user.id = 23 bot_mock = Mock() bot_mock.get_chat_administrators.return_value = [admin_mock] update_mock = Mock() update_mock.message.from_user.id = 111 self.assertEqual(ConversationHandler.END, cmd_add_game.add_game(bot_mock, update_mock)) update_mock.message.reply_text.assert_called_with('You are not admin of the group!')
def test_add_game_should_display_error_if_no_active_games(self): database = SqliteDatabase(':memory:') database_proxy.initialize(database) database.create_tables([User, Game, Subscription]) user_mock = User.create(id=111, steam_id=0, authorization_key='') Game.create(id=1, owner=user_mock, name='test game', active=False) admin_mock = Mock() admin_mock.user.id = 111 bot_mock = Mock() bot_mock.get_chat_administrators.return_value = [admin_mock] update_mock = Mock() update_mock.message.from_user.id = 111 update_mock.message.chat_id = 1234 self.assertEqual(ConversationHandler.END, cmd_add_game.add_game(bot_mock, update_mock)) update_mock.message.reply_text.assert_called_with("You don't have any active games")
def test_add_game_should_display_list_of_games(self, mock_keyboard): database = SqliteDatabase(':memory:') database_proxy.initialize(database) database.create_tables([User, Game, Subscription]) user_mock = User.create(id=111, steam_id=0, authorization_key='') Game.create(id=1, owner=user_mock, name='test game') mock_keyboard.return_value = mock_keyboard admin_mock = Mock() admin_mock.user.id = 111 bot_mock = Mock() bot_mock.get_chat_administrators.return_value = [admin_mock] update_mock = Mock() update_mock.message.from_user.id = 111 update_mock.message.chat_id = 1234 self.assertEqual(cmd_add_game.SELECT, cmd_add_game.add_game(bot_mock, update_mock)) update_mock.message.reply_text.assert_called_with('Chose the game', reply_markup=mock_keyboard) mock_keyboard.assert_called()