예제 #1
0
def add_new_nym(looper,
                sdk_pool_handle,
                creators_wallets,
                alias=None,
                role=None,
                seed=None,
                dest=None,
                verkey=None,
                skipverkey=False,
                no_wait=False):
    seed = seed or randomString(32)
    alias = alias or randomString(5)
    wh, _ = creators_wallets[0]

    # filling nym request and getting steward did
    # if role == None, we are adding client
    nym_request, new_did = looper.loop.run_until_complete(
        prepare_nym_request(creators_wallets[0], seed, alias, role, dest,
                            verkey, skipverkey))

    # sending request using 'sdk_' functions
    signed_reqs = sdk_multi_sign_request_objects(
        looper, creators_wallets,
        [sdk_json_to_request_object(json.loads(nym_request))])
    request_couple = sdk_send_signed_requests(sdk_pool_handle, signed_reqs)[0]
    if no_wait:
        return request_couple
    # waitng for replies
    sdk_get_and_check_replies(looper, [request_couple])
예제 #2
0
def send_and_check(test_body: AbstractTest, req):
    signed_reqs = sdk_multi_sign_request_objects(test_body.looper,
                                                 [test_body.trustee_wallet],
                                                 [req])
    request_couple = sdk_send_signed_requests(test_body.sdk_pool_handle,
                                              signed_reqs)[0]

    return sdk_get_and_check_replies(test_body.looper, [request_couple])[0]
예제 #3
0
def sdk_send_freeze_ledgers(looper, sdk_pool_handle, sdk_wallets,
                            ledgers_ids: [int]):
    req = looper.loop.run_until_complete(
        build_ledgers_freeze_request(sdk_wallets[0][1], ledgers_ids))
    signed_reqs = sdk_multi_sign_request_objects(
        looper, sdk_wallets, [sdk_json_to_request_object(json.loads(req))])
    reps = sdk_send_signed_requests(sdk_pool_handle, signed_reqs)
    return sdk_get_and_check_replies(looper, reps)[0]
def test_txn_with_different_signature_and_idr(looper, txnPoolNodeSet,
                                              sdk_pool_handle,
                                              sdk_wallet_trustee,
                                              sdk_wallet_client):
    # filling nym request and getting steward did
    nym_request, new_did = looper.loop.run_until_complete(
        prepare_nym_request(sdk_wallet_trustee, randomString(32),
                            'newSteward1', STEWARD_STRING))

    # sending request using 'sdk_' functions
    signed_reqs = sdk_multi_sign_request_objects(
        looper, [sdk_wallet_client],
        [sdk_json_to_request_object(json.loads(nym_request))])
    request_couple = sdk_send_signed_requests(sdk_pool_handle, signed_reqs)[0]

    with pytest.raises(RequestNackedException,
                       match="The identifier is not contained in signatures"):
        # waiting for replies
        sdk_get_and_check_replies(looper, [request_couple])
예제 #5
0
def _send_request(looper, helpers, fees, wallets_count, address, owner,
                  sdk_wallet_trustee, sdk_wallet_trustees, sdk_wallet_stewards,
                  sdk_wallet_clients, sdk_wallet_trust_anchors):
    print(wallets_count)
    wallets = sdk_wallet_trustees[:wallets_count.get(TRUSTEE, 0)] + \
              sdk_wallet_stewards[:wallets_count.get(STEWARD, 0)] + \
              sdk_wallet_clients[:wallets_count.get(IDENTITY_OWNER, 0)] + \
              sdk_wallet_trust_anchors[:wallets_count.get(TRUST_ANCHOR, 0)]
    # prepare owner parameter
    if owner == TRUSTEE:
        sender_wallet = sdk_wallet_trustees[0]
    elif owner == STEWARD:
        sender_wallet = sdk_wallet_stewards[0]
    elif owner == IDENTITY_OWNER:
        sender_wallet = sdk_wallet_clients[0]
    elif owner == TRUST_ANCHOR:
        sender_wallet = sdk_wallet_trust_anchors[0]
    else:
        sender_wallet = wallets[0]
    target_dest = sdk_wallet_trustee[1] if owner == "-1" else sender_wallet[1]

    # prepare data
    data = SecretBox().encrypt(json.dumps({'name': 'Jaime'}).encode()).hex()

    # create request
    request = add_attribute(looper, sender_wallet, None, target_dest, enc=data)
    request = sdk_json_to_request_object(json.loads(request))

    request.signature = None
    request.signatures = None
    # add fees
    request = add_fees_request_with_address(helpers, fees, request, address)
    # sign request
    request = sdk_multi_sign_request_objects(looper, wallets, [request])

    return helpers.sdk.sdk_send_and_check(request)
예제 #6
0
def sdk_send_freeze_ledgers(looper, sdk_pool_handle, sdk_wallets, ledgers_ids: [int]):
    req = build_freeze_ledgers_request(sdk_wallets[0][1], ledgers_ids)
    signed_reqs = sdk_multi_sign_request_objects(looper, sdk_wallets, [req])
    reps = sdk_send_signed_requests(sdk_pool_handle, signed_reqs)
    return sdk_get_and_check_replies(looper, reps)[0]