def make_client(index, core_port_increment, callback=None, connect_to_core=True, domain_id=None): keypair = bbclib.KeyPair() keypair.generate() clients[index]['user_id'] = bbclib.get_new_id("user_%i" % index) clients[index]['keypair'] = keypair clients[index]['app'] = bbc_app.BBcAppClient(port=DEFAULT_CORE_PORT + core_port_increment, multiq=False, loglevel=loglv) if connect_to_core: if domain_id is None: global common_domain_id domain_id = common_domain_id clients[index]['app'].set_user_id(clients[index]['user_id']) clients[index]['app'].set_domain_id(domain_id) if callback is not None: clients[index]['app'].set_callback(callback) working_dir = ".bbc1-%i/" % (DEFAULT_CORE_PORT + core_port_increment) if os.path.exists(os.path.join(working_dir, "node_key.pem")): clients[index]['app'].set_node_key( os.path.join(working_dir, "node_key.pem")) time.sleep(1) print("[%i] user_id = %s" % (index, binascii.b2a_hex(clients[index]['user_id'])))
def test_33_messaging(self): print("\n-----", sys._getframe().f_code.co_name, "-----") msg = "message to X" clients[0]['app'].send_message(msg, bbclib.get_new_id("xxxxx")) dat = msg_processor[0].synchronize() assert KeyType.message in dat assert dat[KeyType.reason] == b'Cannot find such user' print("recv=", dat)
import sys sys.path.extend(["../", "../.."]) from bbc1.core.compat import bbclib, bbc_app from bbc1.core.message_key_types import KeyType from bbc1.core.bbc_error import * from testutils import prepare, get_core_client, start_core_thread, make_client, domain_setup_utility LOGLEVEL = 'debug' LOGLEVEL = 'none' core_num = 5 client_num = 5 cores = None clients = None domain_id = bbclib.get_new_id("testdomain") asset_group_id = bbclib.get_new_id("asset_group_1") transactions = [None for i in range(client_num)] msg_processor = [None for i in range(client_num)] fmt = bbclib.BBcFormat.FORMAT_BSON_COMPRESS_BZ2 class MessageProcessor(bbc_app.Callback): def __init__(self, index=0): super(MessageProcessor, self).__init__(self) self.idx = index def proc_cmd_sign_request(self, dat): self.logger.debug( "[%i] Recv SIGN_REQUEST from %s" % (self.idx, binascii.b2a_hex(dat[KeyType.source_user_id])))
# -*- coding: utf-8 -*- import pytest import binascii import sys sys.path.extend(["../", "../../"]) from bbc1.core.compat.bbclib import BBcTransaction, BBcEvent, BBcReference, BBcWitness, BBcRelation, BBcAsset, \ BBcCrossRef, KeyPair, KeyType from bbc1.core.compat import bbclib user_id = bbclib.get_new_id("user_id_test1") user_id2 = bbclib.get_new_id("user_id_test2") domain_id = bbclib.get_new_id("testdomain") asset_group_id = bbclib.get_new_id("asset_group_1") transaction1_id = bbclib.get_new_id("transaction_1") transaction2_id = bbclib.get_new_id("transaction_2") keypair1 = KeyPair() keypair1.generate() keypair2 = KeyPair() keypair2.generate() transaction1 = None asset1 = None asset2 = None event1 = None event2 = None transaction2 = None asset_content = b'abcdefg' print("\n") print("private_key:", binascii.b2a_hex(keypair1.private_key))