From ce52460c6666d6535ac0f20fd5a7157cf7453cea Mon Sep 17 00:00:00 2001 From: Alex Barnsley <8069294+alexbarnsley@users.noreply.github.com> Date: Wed, 26 Mar 2025 17:21:41 +0000 Subject: [PATCH] refactor: update delegates method arguments --- client/api/delegates.py | 16 ++++------------ tests/api/test_delegates.py | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+), 12 deletions(-) diff --git a/client/api/delegates.py b/client/api/delegates.py index ad77e52..3457011 100644 --- a/client/api/delegates.py +++ b/client/api/delegates.py @@ -15,16 +15,8 @@ def all(self, page=None, limit=100, **kwargs): def get(self, delegate_id): return self.with_endpoint('api').request_get(f'delegates/{delegate_id}') - def blocks(self, delegate_id, page=None, limit=100): - params = { - 'page': page, - 'limit': limit, - } - return self.with_endpoint('api').request_get(f'delegates/{delegate_id}/blocks', params) + def blocks(self, delegate_id, **kwargs): + return self.with_endpoint('api').request_get(f'delegates/{delegate_id}/blocks', kwargs) - def voters(self, delegate_id, page=None, limit=100): - params = { - 'page': page, - 'limit': limit, - } - return self.with_endpoint('api').request_get(f'delegates/{delegate_id}/voters', params) + def voters(self, delegate_id, **kwargs): + return self.with_endpoint('api').request_get(f'delegates/{delegate_id}/voters', kwargs) diff --git a/tests/api/test_delegates.py b/tests/api/test_delegates.py index 7cee0c9..553203a 100644 --- a/tests/api/test_delegates.py +++ b/tests/api/test_delegates.py @@ -66,3 +66,39 @@ def test_get_calls_correct_url(): assert len(responses.calls) == 1 assert responses.calls[0].request.url == 'http://127.0.0.1:4002/api/delegates/12345' + + +def test_blocks_calls_correct_url(): + delegate_id = '12345' + responses.add( + responses.GET, + 'http://127.0.0.1:4002/api/delegates/{}/blocks'.format(delegate_id), + json={'success': True}, + status=200 + ) + + client = ArkClient('http://127.0.0.1:4002/api') + client.delegates.blocks(delegate_id, limit=100, orderBy='timestamp:desc') + + assert len(responses.calls) == 1 + assert responses.calls[0].request.url.startswith('http://127.0.0.1:4002/api/delegates/12345/blocks?') + assert 'limit=100' in responses.calls[0].request.url + assert 'orderBy=timestamp%3Adesc' in responses.calls[0].request.url + + +def test_voters_calls_correct_url(): + delegate_id = '12345' + responses.add( + responses.GET, + 'http://127.0.0.1:4002/api/delegates/{}/voters'.format(delegate_id), + json={'success': True}, + status=200 + ) + + client = ArkClient('http://127.0.0.1:4002/api') + client.delegates.voters(delegate_id, limit=100, orderBy='timestamp:desc') + + assert len(responses.calls) == 1 + assert responses.calls[0].request.url.startswith('http://127.0.0.1:4002/api/delegates/12345/voters?') + assert 'limit=100' in responses.calls[0].request.url + assert 'orderBy=timestamp%3Adesc' in responses.calls[0].request.url