def test_02_make_transaction(self): print("\n-----", sys._getframe().f_code.co_name, "-----") user = clients[0]['user_id'] transactions[0] = bbclib.make_transaction_for_base_asset(asset_group_id=asset_group_id, event_num=2) transactions[0].events[0].asset.add(user_id=user, asset_body=b'123456') transactions[0].events[1].asset.add(user_id=user, asset_file=b'abcdefg') ret = clients[0]['app'].get_cross_refs(asset_group_id=asset_group_id, number=2) assert ret wait_check_result_msg_type(msg_processor[0], bbclib.ServiceMessageType.RESPONSE_CROSS_REF)
def test_11_search_transaction(self): print("\n-----", sys._getframe().f_code.co_name, "-----") clients[0]['app'].search_transaction(b'4898g9fh') # NG is expected print("* should be NG *") dat = wait_check_result_msg_type( msg_processor[0], bbclib.MsgType.RESPONSE_SEARCH_TRANSACTION) assert dat[KeyType.status] < ESUCCESS
def test_16_search_transaction(self): print("\n-----", sys._getframe().f_code.co_name, "-----") ret = clients[0]['app'].search_transaction(asset_group_id, b'4898g9fh') assert ret print("* should be NG *") dat = wait_check_result_msg_type(msg_processor[0], bbclib.ServiceMessageType.RESPONSE_SEARCH_TRANSACTION) assert dat[KeyType.status] < ESUCCESS
def test_20_search_asset(self): print("-----", sys._getframe().f_code.co_name, "-----") asset_id = transactions[0].events[0].asset.asset_id ret = clients[3]['app'].search_asset(asset_group_id, asset_id) assert ret dat = wait_check_result_msg_type(msg_processor[3], bbclib.ServiceMessageType.RESPONSE_SEARCH_ASSET) assert dat[KeyType.status] == ESUCCESS print(dat[KeyType.asset_file])
def test_15_search_transaction(self): print("\n-----", sys._getframe().f_code.co_name, "-----") transactions[0].digest() print("find txid=", binascii.b2a_hex(transactions[0].transaction_id)) ret = clients[0]['app'].search_transaction(asset_group_id, transactions[0].transaction_id) assert ret dat = wait_check_result_msg_type(msg_processor[0], bbclib.ServiceMessageType.RESPONSE_SEARCH_TRANSACTION) assert dat[KeyType.status] == ESUCCESS
def test_09_search_asset2(self): print("\n-----", sys._getframe().f_code.co_name, "-----") asid = transactions[0].events[1].asset.asset_id print(" search for asset:%s"%binascii.b2a_hex(asid)) ret = clients[0]['app'].search_asset(asset_group_id, asid) assert ret dat = wait_check_result_msg_type(msg_processor[0], bbclib.ServiceMessageType.RESPONSE_SEARCH_ASSET) assert dat[KeyType.status] == ESUCCESS
def test_17_search_transaction(self): print("-----", sys._getframe().f_code.co_name, "-----") ret = clients[2]['app'].search_transaction(asset_group_id, transactions[0].digest()) assert ret dat = wait_check_result_msg_type(msg_processor[2], bbclib.ServiceMessageType.RESPONSE_SEARCH_TRANSACTION) assert dat[KeyType.status] == ESUCCESS print("transaction:", binascii.b2a_hex(dat[KeyType.transaction_data])) tx_obj = bbclib.recover_transaction_object_from_rawdata(dat[KeyType.transaction_data]) print("txid:", binascii.b2a_hex(tx_obj.digest()))
def test_07_search_asset0(self): print("\n-----", sys._getframe().f_code.co_name, "-----") asid = transactions[0].events[0].asset.asset_id print(" search for asset:%s"%binascii.b2a_hex(asid)) clients[0]['app'].search_transaction_with_condition(asset_group_id=asset_group_id, asset_id=asid) dat = wait_check_result_msg_type(msg_processor[0], bbclib.MsgType.RESPONSE_SEARCH_WITH_CONDITIONS) assert dat[KeyType.status] == ESUCCESS print(dat) assert KeyType.transactions in dat
def test_21_search_transaction_by_userid(self): print("\n-----", sys._getframe().f_code.co_name, "-----") clients[0]['app'].search_transaction_with_condition( asset_group_id=asset_group_id, user_id=clients[0]['user_id']) dat = wait_check_result_msg_type( msg_processor[0], bbclib.MsgType.RESPONSE_SEARCH_WITH_CONDITIONS) assert dat[KeyType.status] == ESUCCESS assert KeyType.transactions in dat txobj, fmt_type = bbclib.deserialize(dat[KeyType.transactions][0]) print(txobj)
def test_08_search_asset_not_found(self): print("\n-----", sys._getframe().f_code.co_name, "-----") asid = bytearray(transactions[0].events[0].asset.asset_id) asid[1] = 0xff asid[2] = 0xff print(" search for asset:%s"%binascii.b2a_hex(asid)) ret = clients[0]['app'].search_asset(asset_group_id, bytes(asid)) assert ret print("* should be NG *") dat = wait_check_result_msg_type(msg_processor[0], bbclib.ServiceMessageType.RESPONSE_SEARCH_ASSET) assert dat[KeyType.status] < ESUCCESS
def test_08_search_asset_not_found(self): print("\n-----", sys._getframe().f_code.co_name, "-----") asid = bytearray(transactions[0].events[0].asset.asset_id) asid[1] = 0xff asid[2] = 0xff print(" search for asset:%s"%binascii.b2a_hex(asid)) clients[0]['app'].search_transaction_with_condition(asset_group_id=asset_group_id, asset_id=bytes(asid)) print("* should be NG *") dat = wait_check_result_msg_type(msg_processor[0], bbclib.MsgType.RESPONSE_SEARCH_WITH_CONDITIONS) assert dat[KeyType.status] < ESUCCESS assert KeyType.transactions not in dat assert KeyType.all_asset_files not in dat
def test_31_search_asset(self): print("-----", sys._getframe().f_code.co_name, "-----") asset_id = transactions[0].events[0].asset.asset_id ret = clients[3]['app'].search_asset(asset_group_id, asset_id) assert ret dat = wait_check_result_msg_type(msg_processor[3], bbclib.ServiceMessageType.RESPONSE_SEARCH_ASSET) assert dat[KeyType.status] == ESUCCESS print(dat[KeyType.asset_file]) print("transaction:", binascii.b2a_hex(dat[KeyType.transaction_data])) tx_obj = bbclib.recover_transaction_object_from_rawdata(dat[KeyType.transaction_data]) print("txid:", binascii.b2a_hex(tx_obj.digest())) ret = cores[3].storage_manager.get_locally(domain_id, asset_group_id, asset_id) assert ret is not None print(ret)
def test_03_insert(self): print("\n-----", sys._getframe().f_code.co_name, "-----") sig = transactions[0].sign(keypair=clients[0]['keypair']) assert sig is not None if sig is None: print(bbclib.error_text) import os os._exit(1) transactions[0].witness.add_signature(user_id=clients[0]['user_id'], signature=sig) print(transactions[0]) transactions[0].digest() print("register transaction=", binascii.b2a_hex(transactions[0].transaction_id)) clients[0]['app'].insert_transaction(transactions[0]) dat = wait_check_result_msg_type(msg_processor[0], bbclib.MsgType.RESPONSE_INSERT) assert dat[KeyType.status] == ESUCCESS
def test_13_search_transaction(self): print("-----", sys._getframe().f_code.co_name, "-----") ret = clients[4]['app'].search_transaction(asset_group_id, transactions[0].digest()) assert ret dat = wait_check_result_msg_type(msg_processor[4], bbclib.ServiceMessageType.RESPONSE_SEARCH_TRANSACTION) assert dat[KeyType.status] == ESUCCESS