Пример #1
0
def test_successful_handle_zero_id(message):
    message.content = {'text': json.dumps({
        'id': 0,
        'type': 'ping',
    })}
    handle_rohrpost_message(message)

    assert len(message.reply_channel.data) == 1
    assert message.reply_channel.data[-1]['type'] == 'pong'
Пример #2
0
def test_handle_unknown_type(message):
    message.content = {'text': json.dumps({
        'id': 123,
        'type': 'handler_not_known',
    })}
    handle_rohrpost_message(message)

    assert len(message.reply_channel.data) == 1
    assert message.reply_channel.data[-1]['error'].startswith("Unknown message type")
Пример #3
0
def test_handle_empty_message(message):
    message.content = {'text': None}
    handle_rohrpost_message(message)

    assert len(message.reply_channel.data) == 1
    assert message.reply_channel.data[-1]['error'].startswith("Received empty message")
Пример #4
0
def test_handle_missing_fields(message):
    message.content = {'text': json.dumps({})}
    handle_rohrpost_message(message)

    assert len(message.reply_channel.data) == 1
    assert message.reply_channel.data[-1]['error'].startswith("Missing required field 'type'.")
Пример #5
0
def test_handle_nondict_message(message):
    message.content = {'text': json.dumps([1, 2, 3])}
    handle_rohrpost_message(message)

    assert len(message.reply_channel.data) == 1
    assert message.reply_channel.data[-1]['error'].startswith("Expected a JSON object as message.")
Пример #6
0
def test_handle_non_json(message):
    message.content = {'text': [1, 2, 3]}
    handle_rohrpost_message(message)

    assert len(message.reply_channel.data) == 1
    assert message.reply_channel.data[-1]['error'].startswith("Could not decode JSON message")