Skip to content

Commit a62197f

Browse files
committed
Merge branch 'development' into 'master'
Development See merge request open-platform/sdk/python!7
2 parents 2492a02 + 04951fd commit a62197f

File tree

12 files changed

+53
-46
lines changed

12 files changed

+53
-46
lines changed

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file.
44
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
55
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
66

7+
## [2.0.0] - 2018-08-02
8+
### Changed
9+
- Renamed module to open_py
10+
- Renamed class to OpenPy
11+
12+
713
## [1.0.1] - 2018-08-01
814
### Changed
915
- Update the README to match the new way of importing the package
@@ -27,5 +33,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
2733
- Get all transactions API
2834
- Tests
2935

36+
[2.0.0]: https://github.com/OpenFuturePlatform/open-api-python-sdk/compare/v2.0.0...v1.0.1
37+
[1.0.1]: https://github.com/OpenFuturePlatform/open-api-python-sdk/compare/v1.0.1...v1.0.0
3038
[1.0.1]: https://github.com/OpenFuturePlatform/open-api-python-sdk/compare/v1.0.1...v1.0.0
3139
[1.0.0]: https://github.com/OpenFuturePlatform/open-api-python-sdk/compare/e8d583f41e071d56dbc6dcf924bcc3a35c85b302...v1.0.0

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,10 @@ To access the library import an OpenPlatform class and call an instance with the
2929

3030

3131
```python
32-
from openplatform import OpenPlatform
32+
from openp_py import OpenPy
3333

3434
# Access API via instance of OpenPlatform class
35-
op = OpenPlatform(open_key)
35+
op = OpenPy(open_key)
3636
```
3737
`open_key` - your open key.
3838

@@ -100,7 +100,7 @@ transactionIndex|BigInteger | Transact
100100
tokenBalance |BigInteger | Scaffold token balance
101101
enabled |Boolean | Scaffold enabled
102102
currency |String | Fiat amount currency
103-
shareHolders |[ShareHolder](#share-holder-attributes) | Scaffold share holders
103+
shareHolders |[ShareHolder](#shareholder-attributes) | Scaffold shareholders
104104

105105
##### get_summary(address)
106106

@@ -192,7 +192,7 @@ quota = op.scaffold.get_quota()
192192
```
193193
#### Shareholder
194194

195-
##### Share holder attributes
195+
##### Shareholder attributes
196196

197197
Attribute | Type | Description
198198
----------------|-----------------------------------------------------|-----------

open_py/__init__.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
from open_py.open_py import OpenPy
2+
3+
__all__ = [OpenPy]

open_py/config.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
api_prefix = 'api/'
2+
remote_api = ''
3+
4+
# base_url = 'https://api.open-platform.zensoft.io'
5+
base_url = 'https://api.openfuture.io'

openplatform/open_api.py renamed to open_py/open_py.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
from openplatform.senders import Scaffold, Shareholder
1+
from open_py.senders import Scaffold, Shareholder
22

33

4-
class OpenPlatform(object):
4+
class OpenPy(object):
55
def __init__(self, open_key=''):
66
if open_key == '':
77
raise AttributeError('open_key can not be empty')

openplatform/senders.py renamed to open_py/senders.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import requests
22

3-
from openplatform.urls import base
4-
from openplatform.utils import validate_address, merge_headers, CONTENT_JSON
3+
from open_py.urls import base
4+
from open_py.utils import validate_address, merge_headers, CONTENT_JSON
55

66

77
class Scaffold:

openplatform/urls.py renamed to open_py/urls.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
from openplatform import config
2-
from openplatform.config import base_url
1+
from open_py import config
2+
from open_py.config import base_url
33
import urllib.parse
44

55

File renamed without changes.

openplatform/__init__.py

Lines changed: 0 additions & 3 deletions
This file was deleted.

openplatform/config.py

Lines changed: 0 additions & 5 deletions
This file was deleted.

tests/const.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,6 @@
7979

8080
test_key = 'op_pk_50g48642-1af1-5dfg-54sz-f868s5v8796c'
8181

82-
test_base_url = 'https://api.open-platform.zensoft.io'
83-
8482
scaffold = {
8583
'version': 'V2',
8684
'conversionAmount': '0.021833823',
@@ -123,7 +121,7 @@
123121
'event': {
124122
'userAddress': developer_address,
125123
'partnerShare': 30,
126-
'type': 'ADDED_SHARE_HOLDER'},
124+
'type': 'ADDED_SHAREHOLDER'},
127125
'scaffold': scaffold}]}
128126

129127
scaffold_data = {

tests/test.py

Lines changed: 26 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,14 @@
44

55
import requests
66

7-
from openplatform.open_api import OpenPlatform
8-
from openplatform.utils import validate_address, merge_headers
7+
from open_py.config import base_url
8+
from open_py.open_py import OpenPy
9+
from open_py.utils import validate_address, merge_headers
910
from tests.const import *
1011

1112

1213
def base_url_mock(rest):
13-
predefined_url = urllib.parse.urljoin(test_base_url, 'api/')
14+
predefined_url = urllib.parse.urljoin(base_url, 'api/')
1415
return urllib.parse.urljoin(predefined_url, rest)
1516

1617

@@ -20,7 +21,7 @@ class TestScaffoldGetters(TestCase):
2021

2122
@classmethod
2223
def setUp(cls):
23-
cls.mock_requests_patcher = patch('openplatform.senders.requests.get')
24+
cls.mock_requests_patcher = patch('open_py.senders.requests.get')
2425
cls.requests_mock = cls.mock_requests_patcher.start()
2526

2627
@classmethod
@@ -32,15 +33,15 @@ def test_getting_list(self):
3233
self.requests_mock.return_value.json.return_value = list_of_scaffolds
3334

3435
# Send a request to the API server and store the response.
35-
op = OpenPlatform(test_key)
36+
op = OpenPy(test_key)
3637
response = op.scaffold.get_all()
3738

3839
# Confirm that the request-response cycle completed successfully.
3940
self.assertEqual(response, list_of_scaffolds)
4041
self.requests_mock.assert_called_with(base_url_mock('scaffolds'), headers=authorization_header)
4142

4243
def test_getting_single_successfully(self):
43-
op = OpenPlatform(test_key)
44+
op = OpenPy(test_key)
4445
self.requests_mock.return_value.json.return_value = scaffold
4546
response = op.scaffold.get_single(valid_address)
4647
self.assertEqual(response, scaffold)
@@ -55,7 +56,7 @@ def test_getting_single_with_wrong_token(self):
5556
invalid_key = 'some_invalid_open_key'
5657
self.requests_mock.return_value.json.return_value = {'status': 401,
5758
'message': 'Open token is invalid or disabled'}
58-
op = OpenPlatform(invalid_key)
59+
op = OpenPy(invalid_key)
5960
with self.assertRaises(requests.HTTPError) as error:
6061
op.scaffold.get_single(valid_address)
6162
self.assertEqual(str(error.exception), 'Open token is invalid or disabled')
@@ -64,7 +65,7 @@ def test_getting_single_with_wrong_token(self):
6465

6566
def test_getting_single_without_token(self):
6667
with self.assertRaises(AttributeError) as error:
67-
OpenPlatform()
68+
OpenPy()
6869
self.assertEqual(str(error.exception), 'open_key can not be empty')
6970

7071
def test_getting_single_with_wrong_address(self):
@@ -78,38 +79,38 @@ def test_getting_single_with_wrong_address(self):
7879
'error': 'Not Found',
7980
'message': 'Not Found',
8081
'path': '/api/scaffolds/0x0000000000000000000000000000000000000000'}
81-
op = OpenPlatform(test_key)
82+
op = OpenPy(test_key)
8283
with self.assertRaises(requests.exceptions.HTTPError) as error:
8384
op.scaffold.get_single(valid_address)
8485
self.requests_mock.assert_called_with(base_url_mock('scaffolds/' + valid_address), headers=authorization_header)
8586
self.assertTrue(mock_response.raise_for_status.called)
8687
self.assertEqual('Not Found', str(error.exception))
8788

8889
def test_getting_all_successfully(self):
89-
op = OpenPlatform(test_key)
90+
op = OpenPy(test_key)
9091
self.requests_mock.return_value.json.return_value = list_of_scaffolds
9192
response = op.scaffold.get_all()
9293
self.assertEqual(response, list_of_scaffolds)
9394
self.requests_mock.assert_called_with(base_url_mock('scaffolds'), headers=authorization_header)
9495

9596
def test_getting_summary_successfully(self):
96-
op = OpenPlatform(test_key)
97+
op = OpenPy(test_key)
9798
self.requests_mock.return_value.json.return_value = summary
9899
response = op.scaffold.get_summary(valid_address)
99100
self.assertEqual(response, summary)
100101
self.requests_mock.assert_called_with(base_url_mock('scaffolds/' + valid_address + '/summary'),
101102
headers=authorization_header)
102103

103104
def test_getting_transactions_successfully(self):
104-
op = OpenPlatform(test_key)
105+
op = OpenPy(test_key)
105106
self.requests_mock.return_value.json.return_value = transactions
106107
response = op.scaffold.get_transactions(valid_address)
107108
self.assertEqual(response, transactions)
108109
self.requests_mock.assert_called_with(base_url_mock('scaffolds/' + valid_address + '/transactions'),
109110
headers=authorization_header)
110111

111112
def test_getting_quota_successfully(self):
112-
op = OpenPlatform(test_key)
113+
op = OpenPy(test_key)
113114
result_qouta = {'limitCount': 10, 'currentCount': 4}
114115
self.requests_mock.return_value.json.return_value = result_qouta
115116
response = op.scaffold.get_quota()
@@ -120,11 +121,11 @@ def test_getting_quota_successfully(self):
120121

121122
class TestScaffoldPosters(TestCase):
122123

123-
@patch('openplatform.senders.requests.post')
124+
@patch('open_py.senders.requests.post')
124125
def test_deploying(self, post_mock):
125126
post_mock.return_value.json.return_value = scaffold
126127

127-
op = OpenPlatform(test_key)
128+
op = OpenPy(test_key)
128129
response = op.scaffold.deploy(scaffold_data)
129130

130131
self.assertEqual(response, scaffold)
@@ -134,11 +135,11 @@ def test_deploying(self, post_mock):
134135

135136
class TestScaffoldDeleters(TestCase):
136137

137-
@patch('openplatform.senders.requests.delete')
138+
@patch('open_py.senders.requests.delete')
138139
def test_deactivating(self, post_mock):
139140
post_mock.return_value.json.return_value = scaffold
140141

141-
op = OpenPlatform(test_key)
142+
op = OpenPy(test_key)
142143
response = op.scaffold.deactivate(valid_address)
143144

144145
self.assertEqual(response, scaffold)
@@ -147,11 +148,11 @@ def test_deactivating(self, post_mock):
147148

148149
class TestScaffoldPatchers(TestCase):
149150

150-
@patch('openplatform.senders.requests.patch')
151+
@patch('open_py.senders.requests.patch')
151152
def test_setting_web_hook(self, post_mock):
152153
post_mock.return_value.json.return_value = scaffold
153154
web_hook = {'webHook': 'https://zensoft.io'}
154-
op = OpenPlatform(test_key)
155+
op = OpenPy(test_key)
155156
response = op.scaffold.set_webhook(valid_address, web_hook)
156157

157158
self.assertEqual(response, scaffold)
@@ -161,32 +162,32 @@ def test_setting_web_hook(self, post_mock):
161162

162163
class TestShareholders(TestCase):
163164

164-
@patch('openplatform.senders.requests.post')
165+
@patch('open_py.senders.requests.post')
165166
def test_creation(self, post_mock):
166167
post_mock.return_value.json.return_value = new_shareholders
167-
op = OpenPlatform(test_key)
168+
op = OpenPy(test_key)
168169
response = op.shareholder.create(valid_address, shareholder_to_be_added)
169170

170171
self.assertEqual(response, new_shareholders)
171172
post_mock.assert_called_with(base_url_mock('scaffolds/' + valid_address + '/holders'),
172173
json=shareholder_to_be_added,
173174
headers=request_headers)
174175

175-
@patch('openplatform.senders.requests.put')
176+
@patch('open_py.senders.requests.put')
176177
def test_updating(self, post_mock):
177178
post_mock.return_value.json.return_value = scaffold
178-
op = OpenPlatform(test_key)
179+
op = OpenPy(test_key)
179180
response = op.shareholder.update(valid_address, developer_address, shareholder_to_be_updated)
180181

181182
self.assertEqual(response, scaffold)
182183
post_mock.assert_called_with(base_url_mock('scaffolds/' + valid_address + '/holders/' + developer_address),
183184
json=shareholder_to_be_updated,
184185
headers=request_headers)
185186

186-
@patch('openplatform.senders.requests.delete')
187+
@patch('open_py.senders.requests.delete')
187188
def test_removing(self, post_mock):
188189
post_mock.return_value.json.return_value = removing_shareholder
189-
op = OpenPlatform(test_key)
190+
op = OpenPy(test_key)
190191
response = op.shareholder.remove(valid_address, developer_address)
191192

192193
self.assertEqual(response, removing_shareholder)

0 commit comments

Comments
 (0)