Skip to content

Commit ac06321

Browse files
authored
[Bug fix] Allow minting script to be added without redeemer (#257)
1 parent bc02bd6 commit ac06321

File tree

2 files changed

+24
-1
lines changed

2 files changed

+24
-1
lines changed

pycardano/txbuilder.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -752,7 +752,8 @@ def _set_redeemer_index(self):
752752
)
753753

754754
for script, redeemer in self._minting_script_to_redeemers:
755-
redeemer.index = sorted_mint_policies.index(script_hash(script))
755+
if redeemer is not None:
756+
redeemer.index = sorted_mint_policies.index(script_hash(script))
756757

757758
self.redeemers.sort(key=lambda r: r.index)
758759

test/pycardano/test_txbuilder.py

+22
Original file line numberDiff line numberDiff line change
@@ -858,6 +858,28 @@ def test_add_minting_script(chain_context):
858858
assert [plutus_script] == witness.plutus_v1_script
859859

860860

861+
def test_add_minting_script_only(chain_context):
862+
tx_builder = TransactionBuilder(chain_context)
863+
tx_in1 = TransactionInput.from_primitive(
864+
["18cbe6cadecd3f89b60e08e68e5e6c7d72d730aaa1ad21431590f7e6643438ef", 0]
865+
)
866+
plutus_script = PlutusV1Script(b"dummy test script")
867+
script_hash = plutus_script_hash(plutus_script)
868+
script_address = Address(script_hash)
869+
utxo1 = UTxO(tx_in1, TransactionOutput(script_address, 10000000))
870+
mint = MultiAsset.from_primitive({script_hash.payload: {b"TestToken": 1}})
871+
tx_builder.mint = mint
872+
tx_builder.add_input(utxo1)
873+
tx_builder.add_minting_script(plutus_script)
874+
receiver = Address.from_primitive(
875+
"addr_test1vrm9x2zsux7va6w892g38tvchnzahvcd9tykqf3ygnmwtaqyfg52x"
876+
)
877+
tx_builder.add_output(TransactionOutput(receiver, Value(5000000, mint)))
878+
tx_body = tx_builder.build(change_address=receiver)
879+
witness = tx_builder.build_witness_set()
880+
assert [plutus_script] == witness.plutus_v1_script
881+
882+
861883
def test_add_minting_script_wrong_redeemer_type(chain_context):
862884
tx_builder = TransactionBuilder(chain_context)
863885
plutus_script = PlutusV1Script(b"dummy test script")

0 commit comments

Comments
 (0)