Exemple #1
0
    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!')
Exemple #2
0
    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")
Exemple #3
0
    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!')
Exemple #4
0
    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")
Exemple #5
0
    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()