diff --git a/algosdk/atomic_transaction_composer.py b/algosdk/atomic_transaction_composer.py index 8f55d685..05e57ec1 100644 --- a/algosdk/atomic_transaction_composer.py +++ b/algosdk/atomic_transaction_composer.py @@ -511,6 +511,7 @@ def execute( return_value=return_value, decode_error=decode_error, tx_info=tx_info, + method=self.method_dict[i], ) ) continue @@ -545,6 +546,7 @@ def execute( return_value=return_value, decode_error=decode_error, tx_info=tx_info, + method=self.method_dict[i], ) method_results.append(abi_result) @@ -692,12 +694,14 @@ def __init__( return_value: Any, decode_error: Optional[Exception], tx_info: dict, + method: abi.Method, ) -> None: self.tx_id = tx_id self.raw_value = raw_value self.return_value = return_value self.decode_error = decode_error self.tx_info = tx_info + self.method = method class AtomicTransactionResponse: diff --git a/test/steps/application_v2_steps.py b/test/steps/application_v2_steps.py index 5a960e8d..e7a1f9c7 100644 --- a/test/steps/application_v2_steps.py +++ b/test/steps/application_v2_steps.py @@ -474,15 +474,11 @@ def create_atomic_transaction_composer(context): context.atomic_transaction_composer = ( atomic_transaction_composer.AtomicTransactionComposer() ) - context.method_list = [] @step('I create the Method object from method signature "{method_signature}"') def build_abi_method(context, method_signature): context.abi_method = abi.Method.from_signature(method_signature) - if not hasattr(context, "method_list"): - context.method_list = [] - context.method_list.append(context.abi_method) @step("I make a transaction signer for the {account_type} account.") @@ -789,9 +785,7 @@ def check_atomic_transaction_composer_response(context, returns): assert result.decode_error is None continue expected_bytes = base64.b64decode(expected) - expected_value = context.method_list[i].returns.type.decode( - expected_bytes - ) + expected_value = result.method.returns.type.decode(expected_bytes) assert expected_bytes == result.raw_value, "actual is {}".format( result.raw_value