Пример #1
0
def handle_message(message):
    try:
        speech.update_model(message.chat, message.text)
    except ValueError as er:
        logger.error(er)
        return
    if f'@{bot.get_me().username}' in message.text:
        generate_sentence(message, reply=True)
Пример #2
0
def test_update_model(mock_settings, mock_db, p_grow, p_limit, expected_text,
                      expected_chain, one_found, message):
    mock_settings.MODEL_LANG = ''
    mock_settings.GROW_CHAIN = p_grow
    mock_settings.MESSAGE_LIMIT = p_limit
    mock_db.find_one.return_value = one_found
    speech.update_model(message.chat, message.text)
    assert mock_db.find_one.called
    assert mock_db.upsert.called_once_with(
        {
            'chat_id': message.chat.id,
            'text': expected_text,
            'chain': expected_chain
        }, ['chat_id'])
Пример #3
0
def test_update_model_raises_exception(p_chat, p_message, p_expected):
    with raises(ValueError) as er:
        speech.update_model(p_chat, p_message)
    assert str(er.value) == p_expected
Пример #4
0
def test_update_model_with_invalid_msg(mock_settings, mock_db, message):
    mock_settings.MODEL_LANG = ''
    message.text = '\n'
    speech.update_model(message.chat, message.text)
    assert not mock_db.find_one.called
    assert not mock_db.upsert.called