File tree Expand file tree Collapse file tree 3 files changed +49
-0
lines changed
Expand file tree Collapse file tree 3 files changed +49
-0
lines changed Original file line number Diff line number Diff line change 1+ from client .resource import Resource
2+
3+
4+ class Contracts (Resource ):
5+
6+ def all (self ):
7+ return self .with_endpoint ('api' ).request_get ('contracts' )
8+
9+ def abi (self , name : str , implementation : str ):
10+ return self .with_endpoint ('api' ).request_get (f'contracts/{ name } /{ implementation } /abi' )
Original file line number Diff line number Diff line change 11from typing import Union
2+ from client .api .contracts import Contracts
23from client .connection import ClientHosts , Connection
34from client .api .api_nodes import ApiNodes
45from client .api .blockchain import Blockchain
@@ -54,6 +55,14 @@ def commits(self):
5455 """
5556 return Commits (self .connection )
5657
58+ @property
59+ def contracts (self ):
60+ """
61+ :return: contracts API
62+ :rtype: client.api.contracts.Contracts
63+ """
64+ return Contracts (self .connection )
65+
5766 @property
5867 def evm (self ):
5968 """
Original file line number Diff line number Diff line change 1+ import responses
2+ from client import ArkClient
3+
4+
5+ def test_all_calls_correct_url ():
6+ responses .add (
7+ responses .GET ,
8+ 'http://127.0.0.1:4002/api/contracts' ,
9+ json = {'success' : True },
10+ status = 200
11+ )
12+
13+ client = ArkClient ('http://127.0.0.1:4002/api' )
14+ client .contracts .all ()
15+ assert len (responses .calls ) == 1
16+ assert responses .calls [0 ].request .url == 'http://127.0.0.1:4002/api/contracts'
17+
18+
19+ def test_abi_calls_correct_url ():
20+ responses .add (
21+ responses .GET ,
22+ 'http://127.0.0.1:4002/api/contracts/consensus/some-address/abi' ,
23+ json = {'success' : True },
24+ status = 200
25+ )
26+
27+ client = ArkClient ('http://127.0.0.1:4002/api' )
28+ client .contracts .abi ('consensus' , 'some-address' )
29+ assert len (responses .calls ) == 1
30+ assert responses .calls [0 ].request .url == 'http://127.0.0.1:4002/api/contracts/consensus/some-address/abi'
You can’t perform that action at this time.
0 commit comments