Skip to content

Commit fddfe6f

Browse files
committed
fix: add missing mappings for algopy.op.Txn members
1 parent f19d46f commit fddfe6f

File tree

3 files changed

+52
-0
lines changed

3 files changed

+52
-0
lines changed

src/_algopy_testing/models/txn_fields.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@ class TransactionFields( # type: ignore[misc]
123123
"app_id": Application,
124124
"xfer_asset": Asset,
125125
"freeze_asset": Asset,
126+
"freeze_account": Account,
126127
"config_asset": Asset,
127128
"frozen": bool,
128129
"default_frozen": bool,

src/_algopy_testing/op/constants.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,27 @@
44
"application_args": "app_args",
55
"applications": "apps",
66
"application_id": "app_id",
7+
"config_asset_clawback": "clawback",
8+
"config_asset_decimals": "decimals",
9+
"config_asset_default_frozen": "default_frozen",
10+
"config_asset_freeze": "freeze",
11+
"config_asset_manager": "manager",
12+
"config_asset_metadata_hash": "metadata_hash",
13+
"config_asset_name": "asset_name",
14+
"config_asset_reserve": "reserve",
15+
"config_asset_total": "total",
16+
"config_asset_unit_name": "unit_name",
17+
"config_asset_url": "url",
18+
"created_application_id": "created_app",
19+
"created_asset_id": "created_asset",
20+
"freeze_asset_account": "freeze_account",
21+
"freeze_asset_frozen": "frozen",
22+
"global_num_byte_slice": "global_num_bytes",
23+
"local_num_byte_slice": "local_num_bytes",
24+
"nonparticipation": "non_participation",
25+
"num_applications": "num_apps",
26+
"tx_id": "txn_id",
27+
"selection_pk": "selection_key",
28+
"state_proof_pk": "state_proof_key",
29+
"vote_pk": "vote_key",
730
}

tests/test_op.py

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1033,3 +1033,31 @@ def test_globals(context: AlgopyTestContext) -> None:
10331033

10341034
assert first_group_id != second_group_id, "expected unique group ids"
10351035
assert first_timestamp <= second_timestamp, "expected unique group ids"
1036+
1037+
1038+
def test_txn_op_mappings(context: AlgopyTestContext) -> None:
1039+
txn1 = context.any.txn.transaction()
1040+
with context.txn.create_group(gtxns=[txn1]):
1041+
assert algopy.Txn.config_asset_clawback == algopy.Account()
1042+
assert algopy.Txn.config_asset_decimals == algopy.UInt64()
1043+
assert not algopy.Txn.config_asset_default_frozen
1044+
assert algopy.Txn.config_asset_freeze == algopy.Account()
1045+
assert algopy.Txn.config_asset_manager == algopy.Account()
1046+
assert algopy.Txn.config_asset_metadata_hash == algopy.Bytes()
1047+
assert algopy.Txn.config_asset_name == algopy.Bytes()
1048+
assert algopy.Txn.config_asset_reserve == algopy.Account()
1049+
assert algopy.Txn.config_asset_total == algopy.UInt64()
1050+
assert algopy.Txn.config_asset_unit_name == algopy.Bytes()
1051+
assert algopy.Txn.config_asset_url == algopy.Bytes()
1052+
assert algopy.Txn.created_application_id == algopy.Application()
1053+
assert algopy.Txn.created_asset_id == algopy.Asset()
1054+
assert algopy.Txn.freeze_asset_account == algopy.Account()
1055+
assert not algopy.Txn.freeze_asset_frozen
1056+
assert algopy.Txn.global_num_byte_slice == algopy.UInt64()
1057+
assert algopy.Txn.local_num_byte_slice == algopy.UInt64()
1058+
assert not algopy.Txn.nonparticipation
1059+
assert algopy.Txn.num_applications == algopy.UInt64()
1060+
assert isinstance(algopy.Txn.tx_id, algopy.Bytes)
1061+
assert algopy.Txn.selection_pk == algopy.Bytes()
1062+
assert algopy.Txn.state_proof_pk == algopy.Bytes()
1063+
assert algopy.Txn.vote_pk == algopy.Bytes()

0 commit comments

Comments
 (0)