Skip to content

Commit 1c7e4aa

Browse files
roks0nfaustbrian
authored andcommitted
refactor: create network objects instead of reading from config.ini (#55)
* refactor: create network objects instead of reading from config.ini * chore: bump client version + log the change
1 parent e8f9365 commit 1c7e4aa

9 files changed

Lines changed: 46 additions & 39 deletions

File tree

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,11 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
77

88
## Unreleased
99

10+
## 0.1.1 - 2018-08-29
11+
12+
### Fixed
13+
14+
- created network objects instead of loading network settings from an ini file which is not included in the built package
15+
1016
## 0.1.0 - 2018-08-27
1117
- Initial Release

config.ini

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

crypto/configuration/network.py

Lines changed: 13 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,19 @@
1-
import os
2-
from configparser import ConfigParser
3-
from datetime import datetime
4-
5-
config_file = os.path.abspath('config.ini')
6-
7-
settings = ConfigParser()
8-
settings.read(config_file)
1+
from crypto.networks.devnet import Devnet
92

103
network = {}
114

125

13-
def set_network(network_name):
6+
def set_network(network_object):
147
"""Set what network you want to use in the crypto library
158
169
Args:
17-
network_name (str): name of a network, default ones are ARK's mainnet, devnet & testnet
10+
network_object (Network object): Testnet, Devnet, Mainnet
1811
"""
1912
global network
2013
network = {
21-
'epoch': datetime.strptime(settings.get(network_name, 'epoch'), '%Y-%m-%d %H:%M:%S'),
22-
'version': int(settings.get(network_name, 'version')),
23-
'wif': int(settings.get(network_name, 'wif')),
14+
'epoch': network_object.epoch,
15+
'version': network_object.version,
16+
'wif': network_object.wif,
2417
}
2518

2619

@@ -31,7 +24,7 @@ def get_network():
3124
dict: network settings (default network is devnet)
3225
"""
3326
if not network:
34-
set_network('devnet')
27+
set_network(Devnet)
3528
return network
3629

3730

@@ -43,10 +36,9 @@ def set_custom_network(epoch, version, wif):
4336
version (int): chains version
4437
wif (int): chains wif
4538
"""
46-
section_name = 'custom'
47-
if section_name not in settings.sections():
48-
settings.add_section(section_name)
49-
settings.set(section_name, 'epoch', epoch.strftime('%Y-%m-%d %H:%M:%S'))
50-
settings.set(section_name, 'version', str(version))
51-
settings.set(section_name, 'wif', str(wif))
52-
set_network('custom')
39+
global network
40+
network = {
41+
'epoch': epoch,
42+
'version': version,
43+
'wif': wif,
44+
}

crypto/networks/__init__.py

Whitespace-only changes.

crypto/networks/devnet.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
from datetime import datetime
2+
3+
4+
class Devnet(object):
5+
epoch = datetime(2017, 3, 21, 13, 00, 00)
6+
version = 30
7+
wif = 170

crypto/networks/mainnet.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
from datetime import datetime
2+
3+
4+
class Mainnet(object):
5+
epoch = datetime(2017, 3, 21, 13, 00, 00)
6+
version = 23
7+
wif = 170

crypto/networks/testnet.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
from datetime import datetime
2+
3+
4+
class Testnet(object):
5+
epoch = datetime(2017, 3, 21, 13, 00, 00)
6+
version = 23
7+
wif = 186

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
setuptools.setup(
2929
name='arkecosystem-crypto',
3030
description='A simple Cryptography Implementation in Python for the ARK Blockchain.',
31-
version='0.1.0',
31+
version='0.1.1',
3232
author='Ark Ecosystem',
3333
author_email='info@ark.io',
3434
url='https://github.com/ArkEcosystem/python-crypto',
Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
from datetime import datetime
22

33
from crypto.configuration.network import get_network, set_custom_network, set_network
4+
from crypto.networks.devnet import Devnet
5+
from crypto.networks.mainnet import Mainnet
46

57

68
def test_get_network():
@@ -9,10 +11,10 @@ def test_get_network():
911

1012

1113
def test_set_network():
12-
set_network('mainnet')
14+
set_network(Mainnet)
1315
result = get_network()
1416
assert result['version'] == 23
15-
set_network('devnet') # set back to devnet so other tests don't fail
17+
set_network(Devnet) # set back to devnet so other tests don't fail
1618

1719

1820
def test_set_custom_network():
@@ -22,4 +24,4 @@ def test_set_custom_network():
2224
assert result['version'] == 11
2325
assert result['wif'] == 130
2426
assert result['epoch'] == epoch_time
25-
set_network('devnet') # set back to devnet so other tests don't fail
27+
set_network(Devnet) # set back to devnet so other tests don't fail

0 commit comments

Comments
 (0)