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
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
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
def test_sign_and_verify(): data = 'test'.encode('utf8') source = 'me' message = Message(data=data, source=source) message = sign(message) assert message.data == data assert message.source == source assert message.public_key assert message.private_key assert message.is_written_by_me() assert message.verified == Verification.unverified message = verify(message) assert message.data == data assert message.source == source assert message.public_key assert message.private_key assert message.is_written_by_me() assert message.verified == Verification.verified
def test_create_message_should_get_signed(webapp): data = b'hello world' r = webapp.post('/m', data, headers={'Content-Type': 'text/plain'}) message_id = r.headers['key'] r = webapp.get('/m/%s' % (message_id)) message = Message.from_http(r.body, r.headers) assert message.signature is not None assert message.public_key is not None assert verify(message)
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' ]