Example #1
0
def test_get_branch_by_id(webapp, session):
    message = Message(data=b'test')
    message.calculate_key()
    session.register_message(message)

    r = webapp.get('/b/' + message.key)
    assert r.status_code == 200
    assert r.content_type == 'text/uri-list'
    assert r.body.decode() == message.key
Example #2
0
def test_get_message_by_id(webapp, session):
    message = Message(data=b'test')
    message.calculate_key()
    session.register_message(message)

    r = webapp.get('/m/' + message.key)
    assert r.status_code == 200
    assert r.content_type == 'text/plain'
    assert r.body == message.data
Example #3
0
def test_message_generate_key():
    data = 'test'.encode('utf8')
    public_key = 'public key'
    message = Message(data=data, public_key=public_key)
    assert message.data == data
    assert message.public_key == public_key
    message.calculate_key()
    assert message.data == data
    assert message.public_key == public_key
    assert message.key is not None
Example #4
0
def test_populate_branch_with_messages_in_the_wrong_order(session):
    messages = {}
    last = None
    for c in 'abcdefghij':
        message = Message(data=b'a')
        if last:
            message.in_reply_to = last.key
        message.calculate_key()
        last = message
        messages[c] = message

    for c in 'efbcagijhd':
        session.register_message(messages[c])

    branch = session.get_branch(messages['a'].key)
    assert len(session.get_branches()) == 1
    assert len(branch) == 10
    assert branch.root == messages['a'].key

    tree = branch.to_flat_tree()
    assert tree == [
        {'key': messages[x].key, 'level': 0}
        for x in 'abcdefghij'
    ]