Skip to content
Snippets Groups Projects
Commit 371975d8 authored by inso's avatar inso
Browse files

Block UID in Peer and block

parent 010f5805
No related branches found
No related tags found
No related merge requests found
...@@ -197,14 +197,14 @@ class Test_BMA_Blockchain(WebFunctionalSetupMixin, unittest.TestCase): ...@@ -197,14 +197,14 @@ class Test_BMA_Blockchain(WebFunctionalSetupMixin, unittest.TestCase):
json_sample = { json_sample = {
"pubkey": "8Fi1VSTbjkXguwThF4v2ZxC5whK7pwG2vcGTkPUPjPGU", "pubkey": "8Fi1VSTbjkXguwThF4v2ZxC5whK7pwG2vcGTkPUPjPGU",
"uid": "inso", "uid": "inso",
"sigDate": 1421787800, "sigDate": "0-E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"memberships": [ "memberships": [
{ {
"version": 1, "version": 1,
"currency": "meta_brouzouf", "currency": "meta_brouzouf",
"membership": "IN", "membership": "IN",
"blockNumber": 0, "blockNumber": 0,
"blockHash": "DA39A3EE5E6B4B0D3255BFEF95601890AFD80709", "blockHash": "E3B0C44298FC1C149AFBF4C8996FB92427AE41E4649B934CA495991B7852B855",
"written": 10005 "written": 10005
}, },
{ {
......
...@@ -99,7 +99,7 @@ PoWMin: 3 ...@@ -99,7 +99,7 @@ PoWMin: 3
Time: 1418077277 Time: 1418077277
MedianTime: 1418077277 MedianTime: 1418077277
Issuer: HnFcSms8jzwngtVomTTnzudZx7SHUQY8sVE1y8yBmULk Issuer: HnFcSms8jzwngtVomTTnzudZx7SHUQY8sVE1y8yBmULk
Parameters: 0.01:302400:100:5259600:2629800:3:5:2629800:3:11:600:10:20:0.67 Parameters: 0.1:86400:100:604800:15:604800:2629800:3:3:2629800:3:11:600:20:144:0.67
MembersCount: 4 MembersCount: 4
Identities: Identities:
HnFcSms8jzwngtVomTTnzudZx7SHUQY8sVE1y8yBmULk:h/H8tDIEbfA4yxMQcvfOXVDQhi1sUa9qYtPKrM59Bulv97ouwbAvAsEkC1Uyit1IOpeAV+CQQs4IaAyjE8F1Cw==:0-DA39A3EE5E6B4B0D3255BFEF95601890AFD80709:cgeek HnFcSms8jzwngtVomTTnzudZx7SHUQY8sVE1y8yBmULk:h/H8tDIEbfA4yxMQcvfOXVDQhi1sUa9qYtPKrM59Bulv97ouwbAvAsEkC1Uyit1IOpeAV+CQQs4IaAyjE8F1Cw==:0-DA39A3EE5E6B4B0D3255BFEF95601890AFD80709:cgeek
...@@ -193,8 +193,8 @@ class Test_Block(unittest.TestCase): ...@@ -193,8 +193,8 @@ class Test_Block(unittest.TestCase):
self.assertEqual(block.time, 1418077277) self.assertEqual(block.time, 1418077277)
self.assertEqual(block.mediantime, 1418077277) self.assertEqual(block.mediantime, 1418077277)
self.assertEqual(block.issuer, "HnFcSms8jzwngtVomTTnzudZx7SHUQY8sVE1y8yBmULk") self.assertEqual(block.issuer, "HnFcSms8jzwngtVomTTnzudZx7SHUQY8sVE1y8yBmULk")
self.assertEqual(block.parameters, ('0.01','302400','100','5259600','2629800','3','5', self.assertEqual(block.parameters, ('0.1','86400','100','604800','15', '604800', '2629800','3','3',
'2629800','3','11','600','10','20','0.67')) '2629800','3','11','600','20','144','0.67'))
self.assertEqual(block.members_count, 4) self.assertEqual(block.members_count, 4)
self.assertEqual(len(block.identities), 4) self.assertEqual(len(block.identities), 4)
self.assertEqual(len(block.joiners), 4) self.assertEqual(len(block.joiners), 4)
......
...@@ -25,7 +25,7 @@ class TestPeer(unittest.TestCase): ...@@ -25,7 +25,7 @@ class TestPeer(unittest.TestCase):
peer = Peer.from_signed_raw(rawpeer) peer = Peer.from_signed_raw(rawpeer)
self.assertEqual(peer.currency, "beta_brousouf") self.assertEqual(peer.currency, "beta_brousouf")
self.assertEqual(peer.pubkey, "HsLShAtzXTVxeUtQd7yi5Z5Zh4zNvbu8sTEZ53nfKcqY") self.assertEqual(peer.pubkey, "HsLShAtzXTVxeUtQd7yi5Z5Zh4zNvbu8sTEZ53nfKcqY")
self.assertEqual(str(peer.blockid), "8-1922C324ABC4AF7EF7656734A31F5197888DDD52") self.assertEqual(str(peer.blockUID), "8-1922C324ABC4AF7EF7656734A31F5197888DDD52")
self.assertEqual(len(peer.endpoints), 3) self.assertEqual(len(peer.endpoints), 3)
self.assertTrue(type(peer.endpoints[0]) is BMAEndpoint) self.assertTrue(type(peer.endpoints[0]) is BMAEndpoint)
self.assertTrue(type(peer.endpoints[1]) is BMAEndpoint) self.assertTrue(type(peer.endpoints[1]) is BMAEndpoint)
...@@ -50,7 +50,7 @@ class TestPeer(unittest.TestCase): ...@@ -50,7 +50,7 @@ class TestPeer(unittest.TestCase):
self.assertEqual(from_rendered_peer.currency, "beta_brousouf") self.assertEqual(from_rendered_peer.currency, "beta_brousouf")
self.assertEqual(from_rendered_peer.pubkey, "HsLShAtzXTVxeUtQd7yi5Z5Zh4zNvbu8sTEZ53nfKcqY") self.assertEqual(from_rendered_peer.pubkey, "HsLShAtzXTVxeUtQd7yi5Z5Zh4zNvbu8sTEZ53nfKcqY")
self.assertEqual(str(from_rendered_peer.blockid), "8-1922C324ABC4AF7EF7656734A31F5197888DDD52") self.assertEqual(str(from_rendered_peer.blockUID), "8-1922C324ABC4AF7EF7656734A31F5197888DDD52")
self.assertEqual(len(from_rendered_peer.endpoints), 3) self.assertEqual(len(from_rendered_peer.endpoints), 3)
self.assertTrue(type(from_rendered_peer.endpoints[0]) is BMAEndpoint) self.assertTrue(type(from_rendered_peer.endpoints[0]) is BMAEndpoint)
self.assertTrue(type(from_rendered_peer.endpoints[1]) is BMAEndpoint) self.assertTrue(type(from_rendered_peer.endpoints[1]) is BMAEndpoint)
......
...@@ -117,9 +117,8 @@ The class Block handles Block documents. ...@@ -117,9 +117,8 @@ The class Block handles Block documents.
re_issuer = re.compile("Issuer: ({pubkey_regex})\n".format(pubkey_regex=pubkey_regex)) re_issuer = re.compile("Issuer: ({pubkey_regex})\n".format(pubkey_regex=pubkey_regex))
re_previoushash = re.compile("PreviousHash: ({block_hash_regex})\n".format(block_hash_regex=block_hash_regex)) re_previoushash = re.compile("PreviousHash: ({block_hash_regex})\n".format(block_hash_regex=block_hash_regex))
re_previousissuer = re.compile("PreviousIssuer: ({pubkey_regex})\n".format(pubkey_regex=pubkey_regex)) re_previousissuer = re.compile("PreviousIssuer: ({pubkey_regex})\n".format(pubkey_regex=pubkey_regex))
re_parameters = re.compile("Parameters: ([0-9]+\.[0-9]+):([0-9]+):([0-9]+):([0-9]+):\ re_parameters = re.compile("Parameters: ([0-9]+\.[0-9]+):([0-9]+):([0-9]+):([0-9]+):([0-9]+):([0-9]+):([0-9]+):\
([0-9]+):([0-9]+):([0-9]+):([0-9]+):([0-9]+):([0-9]+):([0-9]+):([0-9]+):([0-9]+):\ ([0-9]+):([0-9]+):([0-9]+):([0-9]+):([0-9]+):([0-9]+):([0-9]+):([0-9]+):([0-9]+\.[0-9]+)\n")
([0-9]+\.[0-9]+)\n")
re_memberscount = re.compile("MembersCount: ([0-9]+)\n") re_memberscount = re.compile("MembersCount: ([0-9]+)\n")
re_identities = re.compile("Identities:\n") re_identities = re.compile("Identities:\n")
re_joiners = re.compile("Joiners:\n") re_joiners = re.compile("Joiners:\n")
...@@ -218,7 +217,7 @@ The class Block handles Block documents. ...@@ -218,7 +217,7 @@ The class Block handles Block documents.
self.noonce = noonce self.noonce = noonce
@property @property
def blockid(self): def blockUID(self):
return BlockUID(self.number, self.inner_hash) return BlockUID(self.number, self.inner_hash)
@classmethod @classmethod
...@@ -270,8 +269,11 @@ The class Block handles Block documents. ...@@ -270,8 +269,11 @@ The class Block handles Block documents.
parameters = None parameters = None
if number == 0: if number == 0:
try:
parameters = Block.re_parameters.match(lines[n]).groups() parameters = Block.re_parameters.match(lines[n]).groups()
n += 1 n += 1
except AttributeError:
raise MalformedDocumentError("Parameters")
members_count = int(Block.parse_field("MembersCount", lines[n])) members_count = int(Block.parse_field("MembersCount", lines[n]))
n += 1 n += 1
...@@ -341,7 +343,7 @@ The class Block handles Block documents. ...@@ -341,7 +343,7 @@ The class Block handles Block documents.
tx_lines = "" tx_lines = ""
header_data = Transaction.re_header.match(lines[n]) header_data = Transaction.re_header.match(lines[n])
if header_data is None: if header_data is None:
raise MalformedDocumentError("Inline transaction ({0})".format(lines[n])) raise MalformedDocumentError("Compact transaction ({0})".format(lines[n]))
version = int(header_data.group(1)) version = int(header_data.group(1))
issuers_num = int(header_data.group(2)) issuers_num = int(header_data.group(2))
inputs_num = int(header_data.group(3)) inputs_num = int(header_data.group(3))
......
...@@ -35,12 +35,12 @@ class Peer(Document): ...@@ -35,12 +35,12 @@ class Peer(Document):
"Endpoints": re_endpoints "Endpoints": re_endpoints
}} }}
def __init__(self, version, currency, pubkey, blockid, def __init__(self, version, currency, pubkey, blockUID,
endpoints, signature): endpoints, signature):
super().__init__(version, currency, [signature]) super().__init__(version, currency, [signature])
self.pubkey = pubkey self.pubkey = pubkey
self.blockid = blockid self.blockUID = blockUID
self.endpoints = endpoints self.endpoints = endpoints
@classmethod @classmethod
...@@ -60,7 +60,7 @@ class Peer(Document): ...@@ -60,7 +60,7 @@ class Peer(Document):
pubkey = Peer.parse_field("Pubkey", lines[n]) pubkey = Peer.parse_field("Pubkey", lines[n])
n += 1 n += 1
blockid = BlockUID.from_str(Peer.parse_field("Block", lines[n])) blockUID = BlockUID.from_str(Peer.parse_field("Block", lines[n]))
n += 1 n += 1
Peer.parse_field("Endpoints", lines[n]) Peer.parse_field("Endpoints", lines[n])
...@@ -74,7 +74,7 @@ class Peer(Document): ...@@ -74,7 +74,7 @@ class Peer(Document):
signature = Peer.re_signature.match(lines[n]).group(1) signature = Peer.re_signature.match(lines[n]).group(1)
return cls(version, currency, pubkey, blockid, endpoints, signature) return cls(version, currency, pubkey, blockUID, endpoints, signature)
def raw(self): def raw(self):
doc = """Version: {0} doc = """Version: {0}
...@@ -83,7 +83,7 @@ Currency: {1} ...@@ -83,7 +83,7 @@ Currency: {1}
PublicKey: {2} PublicKey: {2}
Block: {3} Block: {3}
Endpoints: Endpoints:
""".format(self.version, self.currency, self.pubkey, self.blockid) """.format(self.version, self.currency, self.pubkey, self.blockUID)
for endpoint in self.endpoints: for endpoint in self.endpoints:
doc += "{0}\n".format(endpoint.inline()) doc += "{0}\n".format(endpoint.inline())
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment