def test_can_send_same_claim_def_by_different_issuers(looper, sdk_pool_handle, nodeSet, sdk_wallet_trustee, sdk_wallet_steward, schema_json): wallet_handle, identifier = sdk_wallet_trustee _, definition_json = looper.loop.run_until_complete( issuer_create_and_store_credential_def( wallet_handle, identifier, schema_json, "some_tag4", "CL", json.dumps({"support_revocation": True}))) request = looper.loop.run_until_complete( build_cred_def_request(identifier, definition_json)) sdk_get_and_check_replies(looper, [ sdk_sign_and_submit_req(sdk_pool_handle, sdk_wallet_trustee, request) ]) wallet_handle, identifier = sdk_wallet_steward _, definition_json = looper.loop.run_until_complete( issuer_create_and_store_credential_def( wallet_handle, identifier, schema_json, "some_tag4", "CL", json.dumps({"support_revocation": True}))) request = looper.loop.run_until_complete( build_cred_def_request(identifier, definition_json)) sdk_get_and_check_replies(looper, [ sdk_sign_and_submit_req(sdk_pool_handle, sdk_wallet_steward, request) ])
def test_update_claim_def_for_same_schema_and_signature_type( looper, sdk_pool_handle, nodeSet, sdk_wallet_trustee, schema_json): wallet_handle, identifier = sdk_wallet_trustee _, definition_json = looper.loop.run_until_complete(issuer_create_and_store_credential_def( wallet_handle, identifier, schema_json, "some_tag3", "CL", json.dumps({"support_revocation": True}))) request = looper.loop.run_until_complete(build_cred_def_request(identifier, definition_json)) sdk_get_and_check_replies(looper, [sdk_sign_and_submit_req(sdk_pool_handle, sdk_wallet_trustee, request)]) definition_json = modify_field(definition_json, '999', 'value', 'primary', 'n') request = looper.loop.run_until_complete(build_cred_def_request(identifier, definition_json)) sdk_get_and_check_replies(looper, [sdk_sign_and_submit_req(sdk_pool_handle, sdk_wallet_trustee, request)])
def test_claim_def_reply_is_valid(looper, sdk_pool_handle, sdk_wallet_steward): wallet_handle, identifier = sdk_wallet_steward schema_json, _ = sdk_write_schema(looper, sdk_pool_handle, sdk_wallet_steward) schema_id = json.loads(schema_json)['id'] request = looper.loop.run_until_complete( build_get_schema_request(identifier, schema_id)) reply = sdk_get_reply( looper, sdk_sign_and_submit_req(sdk_pool_handle, sdk_wallet_steward, request))[1] _, schema_json = looper.loop.run_until_complete( parse_get_schema_response(json.dumps(reply))) _, definition_json = looper.loop.run_until_complete( issuer_create_and_store_credential_def( wallet_handle, identifier, schema_json, "some_tag", "CL", json.dumps({"support_revocation": True}))) request = looper.loop.run_until_complete( build_cred_def_request(identifier, definition_json)) reply = sdk_get_reply( looper, sdk_sign_and_submit_req(sdk_pool_handle, sdk_wallet_steward, request))[1] validate_write_reply(reply) validate_claim_def_txn(reply['result']['txn'])
def test_send_claim_def_schema_and_claim_def_in_one_batch( looper, tconf, sdk_pool_handle, nodeSet, sdk_wallet_trustee): with max_3pc_batch_limits(tconf, size=2) as tconf: initial_seq_no = nodeSet[0].domainLedger.size wallet_handle, identifier = sdk_wallet_trustee # send SCHEMA _, schema_json = looper.loop.run_until_complete( issuer_create_schema(identifier, "name2", "2.0", json.dumps(["first", "last"]))) schema_req_json = looper.loop.run_until_complete( build_schema_request(identifier, schema_json)) schema_req = sdk_sign_and_submit_req(sdk_pool_handle, sdk_wallet_trustee, schema_req_json) # send CLAIM_DEF _, claim_def_json = looper.loop.run_until_complete( issuer_create_and_store_credential_def( wallet_handle, identifier, schema_json, "some_tag", "CL", json.dumps({"support_revocation": True}))) claim_def_req_json = looper.loop.run_until_complete( build_cred_def_request(identifier, claim_def_json)) claim_def_req_json = modify_field(claim_def_req_json, initial_seq_no + 1, OPERATION, REF) claim_def_req = sdk_sign_and_submit_req(sdk_pool_handle, sdk_wallet_trustee, claim_def_req_json) # check both are written sdk_get_and_check_replies(looper, [schema_req, claim_def_req])
def sdk_build_claim_def(self, schema_json, identifier=None, sdk_wallet=None): sdk_wallet = sdk_wallet or self._wallet_steward identifier = identifier or sdk_wallet[1] wallet_handle, _ = sdk_wallet _, definition_json = self._looper.loop.run_until_complete(issuer_create_and_store_credential_def( wallet_handle, identifier, schema_json, "some_tag", "CL", json.dumps({"support_revocation": True}))) request = self._looper.loop.run_until_complete(build_cred_def_request(identifier, definition_json)) return request
def sdk_send_claim_def(looper, sdk_pool_handle, sdk_wallet, tag, schema_json): wallet_handle, identifier = sdk_wallet _, definition_json = looper.loop.run_until_complete(issuer_create_and_store_credential_def( wallet_handle, identifier, schema_json, tag, "CL", json.dumps({"support_revocation": True}))) request = looper.loop.run_until_complete(build_cred_def_request(identifier, definition_json)) reply = sdk_get_and_check_replies(looper, [sdk_sign_and_submit_req(sdk_pool_handle, sdk_wallet, request)]) return reply
def test_send_claim_def_fails_if_ref_is_not_existing_seqno( looper, sdk_pool_handle, nodeSet, sdk_wallet_trustee, schema_json): wallet_handle, identifier = sdk_wallet_trustee _, definition_json = looper.loop.run_until_complete(issuer_create_and_store_credential_def( wallet_handle, identifier, schema_json, "some_tag2", "CL", json.dumps({"support_revocation": True}))) request = looper.loop.run_until_complete(build_cred_def_request(identifier, definition_json)) request = modify_field(request, 999999, OPERATION, REF) with pytest.raises(RequestRejectedException) as e: sdk_get_and_check_replies(looper, [sdk_sign_and_submit_req(sdk_pool_handle, sdk_wallet_trustee, request)]) e.match('doesn\'t exist')
def claim_def(looper, sdk_wallet_handle, sdk_wallet_steward, send_schema_req): schema = json.loads(send_schema_req[0]) tag = 'some_tag' schema_seq_no = send_schema_req[1]['result']['txnMetadata']['seqNo'] schema['seqNo'] = schema_seq_no definition_id, definition_json = \ looper.loop.run_until_complete(issuer_create_and_store_credential_def( sdk_wallet_handle, sdk_wallet_steward[1], json.dumps(schema), tag, "CL", json.dumps({"support_revocation": True}))) cred_def = looper.loop.run_until_complete(build_cred_def_request(sdk_wallet_steward[1], definition_json)) return json.loads(cred_def)['operation']
def added_claim_def_id_large_schema(looper, sdk_pool_handle, nodeSet, sdk_wallet_trustee, large_schema_json): wallet_handle, identifier = sdk_wallet_trustee _, definition_json = looper.loop.run_until_complete( issuer_create_and_store_credential_def( wallet_handle, identifier, large_schema_json, "some_tag", "CL", json.dumps({"support_revocation": True}))) request = looper.loop.run_until_complete( build_cred_def_request(identifier, definition_json)) rep = sdk_get_and_check_replies(looper, [ sdk_sign_and_submit_req(sdk_pool_handle, sdk_wallet_trustee, request) ]) return rep[0][1]['result'][TXN_METADATA][TXN_METADATA_ID]
def req(request, looper, sdk_pool_handle, sdk_wallet_steward): wallet_handle, identifier = sdk_wallet_steward if request.param == "ATTRIB": raw = json.dumps({'answer': 42}) request_json = looper.loop.run_until_complete( build_attrib_request(identifier, identifier, raw=raw, xhash=None, enc=None)) elif request.param == "SCHEMA": _, schema_json = looper.loop.run_until_complete( issuer_create_schema(identifier, "name", "1.0", json.dumps(["first", "last"]))) request_json = looper.loop.run_until_complete( build_schema_request(identifier, schema_json)) elif request.param == "RS_SCHEMA": rs_schema = {'@id': "fakeId234e", '@type': "0od"} request_json = build_rs_schema_request(identifier, rs_schema, "ISO18023_Drivers_License", "1.1") elif request.param == "CLAIM_DEF": schema_json, _ = sdk_write_schema(looper, sdk_pool_handle, sdk_wallet_steward) schema_id = json.loads(schema_json)['id'] request = looper.loop.run_until_complete( build_get_schema_request(identifier, schema_id)) reply = sdk_get_reply( looper, sdk_sign_and_submit_req(sdk_pool_handle, sdk_wallet_steward, request))[1] _, schema_json = looper.loop.run_until_complete( parse_get_schema_response(json.dumps(reply))) _, definition_json = looper.loop.run_until_complete( issuer_create_and_store_credential_def( wallet_handle, identifier, schema_json, "some_tag", "CL", json.dumps({"support_revocation": True}))) request_json = looper.loop.run_until_complete( build_cred_def_request(identifier, definition_json)) elif request.param == "NYM": idr, verkey = createHalfKeyIdentifierAndAbbrevVerkey() request_json = looper.loop.run_until_complete( build_nym_request(identifier, idr, verkey, None, None)) req_signed = looper.loop.run_until_complete( sign_request(wallet_handle, identifier, request_json)) return Request(**json.loads(req_signed))