Skip to content

Commit f892b62

Browse files
committed
make transfer use blob address, allow actor to receive funds
1 parent ae7f931 commit f892b62

File tree

2 files changed

+10
-5
lines changed

2 files changed

+10
-5
lines changed

convex_api/convex_api.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -190,15 +190,15 @@ def transfer(self, to_address_account, amount, account):
190190
191191
"""
192192
if isinstance(to_address_account, str):
193-
to_address = remove_0x_prefix(to_address_account)
193+
to_address = to_address_account
194194
else:
195-
to_address = remove_0x_prefix(to_address_account.address)
195+
to_address = to_address_account.address_checksum
196196
if not to_address:
197197
raise ValueError(f'You must provide a valid to account/address ("{to_address_account}") to transfer funds too')
198198

199-
line = f'(transfer "{to_address}" {amount})'
199+
line = f'(transfer {to_address} {amount})'
200200
if self._language == ConvexAPI.LANGUAGE_SCRYPT:
201-
line = f'transfer("{to_address}", {amount})'
201+
line = f'transfer({to_address}, {amount})'
202202

203203
result = self.send(line, account)
204204
return result

tests/intergration/test_convex_break.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,9 @@ def test_convex_recursion(convex, test_account):
5454
convex.query('(call chain-0 (get))', test_account)
5555

5656
def test_schedule_transfer(convex, test_account, other_account):
57+
# you cannot send coins to
58+
# an actor , if it exports the receive-coin function:
59+
5760
contract = """
5861
(def transfer-for-ever
5962
(deploy
@@ -69,14 +72,16 @@ def test_schedule_transfer(convex, test_account, other_account):
6972
(defn show-schedule []
7073
[(get *state* :schedule) *address*]
7174
)
72-
(export show-schedule tx-delay tx-now)
75+
(defn receive-coin [sender amount data] (accept amount))
76+
(export show-schedule tx-delay tx-now, receive-coin)
7377
)
7478
)
7579
)
7680
"""
7781
# (call contract-address (tx-to to-address amount))
7882

7983
auto_topup_account(convex, test_account)
84+
auto_topup_account(convex, other_account)
8085
result = convex.send(contract, test_account)
8186
contract_address = result['value']
8287
convex.transfer(contract_address, 8000000, other_account)

0 commit comments

Comments
 (0)