Skip to content

Commit a5abcec

Browse files
committed
fix: handle request object type in test_logging_txn_state
- Remove .as_dict call since request is already a dictionary - Update error handling to support both RequestRejectedException and CommonSdkIOException - Add support for VdrErrorCode 31 in error message Signed-off-by: MoulayHicham <rhofirjob@gmail.com>
1 parent bd67e4d commit a5abcec

2 files changed

Lines changed: 9 additions & 4 deletions

File tree

plenum/test/logging/test_logging_txn_state.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
import pytest
55

6-
from plenum.common.exceptions import RequestRejectedException
6+
from plenum.common.exceptions import RequestRejectedException, CommonSdkIOException
77
from plenum.common.request import Request
88
from plenum.common.types import f, OPERATION
99
from plenum.common.util import randomString
@@ -64,10 +64,12 @@ def testLoggingTxnStateForInvalidRequest(
6464
request_couple = sdk_sign_and_send_prepared_request(looper, sdk_wallet_client,
6565
sdk_pool_handle, nym_request)
6666

67-
with pytest.raises(RequestRejectedException) as e:
67+
with pytest.raises((RequestRejectedException, CommonSdkIOException)) as e:
6868
sdk_get_and_check_replies(looper, [request_couple])
6969

70-
assert 'Only Steward is allowed to do these transactions' in e._excinfo[1].args[0]
70+
error_msg = str(e._excinfo[1])
71+
assert 'Only Steward is allowed to do these transactions' in error_msg or 'Got an error with code 31' in error_msg
72+
7173
request = request_couple[0]
7274
req_id = str(request[f.REQ_ID.nm])
7375
digest = get_key_from_req(request)

plenum/test/pool_transactions/helper.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -320,9 +320,12 @@ def prepare_node_request(steward_did, new_node_name=None, clientIp=None,
320320

321321

322322
def sdk_sign_and_send_prepared_request(looper, sdk_wallet, sdk_pool_handle, string_req):
323-
signed_reqs = sdk_sign_request_objects(looper, sdk_wallet,
323+
if isinstance(string_req, str):
324+
signed_reqs = sdk_sign_request_objects(looper, sdk_wallet,
324325
[sdk_json_to_request_object(
325326
json.loads(string_req))])
327+
else:
328+
signed_reqs = sdk_sign_request_objects(looper, sdk_wallet, [string_req])
326329
request_couple = sdk_send_signed_requests(sdk_pool_handle, signed_reqs)[0]
327330
# Convert coroutine to future if needed
328331
if asyncio.iscoroutine(request_couple[1]):

0 commit comments

Comments
 (0)