Skip to content
Snippets Groups Projects
Commit 37b5405b authored by inso's avatar inso
Browse files

More unit tests

parent 7aa63507
No related branches found
No related tags found
No related merge requests found
...@@ -115,7 +115,7 @@ class Test_Block: ...@@ -115,7 +115,7 @@ class Test_Block:
assert len(block.certifications) == 12 assert len(block.certifications) == 12
assert block.transactions == [] assert block.transactions == []
def test_to_raw_from_signed_raw(self): def test_toraw_fromsignedraw(self):
block = Block.from_signed_raw(raw_block) block = Block.from_signed_raw(raw_block)
rendered_raw = block.signed_raw() rendered_raw = block.signed_raw()
from_rendered_raw = Block.from_signed_raw(rendered_raw) from_rendered_raw = Block.from_signed_raw(rendered_raw)
...@@ -139,7 +139,7 @@ class Test_Block: ...@@ -139,7 +139,7 @@ class Test_Block:
assert from_rendered_raw.certifications == [] assert from_rendered_raw.certifications == []
assert from_rendered_raw.transactions == [] assert from_rendered_raw.transactions == []
def test_to_raw_from_signed_raw_zero(self): def test_toraw_fromrawzero(self):
block = Block.from_signed_raw(raw_block_zero) block = Block.from_signed_raw(raw_block_zero)
rendered_raw = block.signed_raw() rendered_raw = block.signed_raw()
from_rendered_raw = block.from_signed_raw(rendered_raw) from_rendered_raw = block.from_signed_raw(rendered_raw)
......
...@@ -58,6 +58,3 @@ class Test_SelfCertification: ...@@ -58,6 +58,3 @@ class Test_SelfCertification:
assert cert.blocknumber == 0 assert cert.blocknumber == 0
assert cert.blockhash == blockhash assert cert.blockhash == blockhash
assert cert.signatures[0] == "qn/XNJjaGIwfnR+wGrDME6YviCQbG+ywsQWnETlAsL6q7o3k1UhpR5ZTVY9dvejLKuC+1mUEXVTmH+8Ib55DBA==" assert cert.signatures[0] == "qn/XNJjaGIwfnR+wGrDME6YviCQbG+ywsQWnETlAsL6q7o3k1UhpR5ZTVY9dvejLKuC+1mUEXVTmH+8Ib55DBA=="
...@@ -43,3 +43,17 @@ class Test_Membership: ...@@ -43,3 +43,17 @@ class Test_Membership:
assert membership.uid == "cgeek" assert membership.uid == "cgeek"
assert membership.signatures[0] == "dkaXIiCYUJtCg8Feh/BKvPYf4uFH9CJ/zY6J4MlA9BsjmcMe4YAblvNt/gJy31b1aGq3ue3h14mLMCu84rraDg==" assert membership.signatures[0] == "dkaXIiCYUJtCg8Feh/BKvPYf4uFH9CJ/zY6J4MlA9BsjmcMe4YAblvNt/gJy31b1aGq3ue3h14mLMCu84rraDg=="
assert membership.membership_type == 'IN' assert membership.membership_type == 'IN'
def test_fromraw_toraw(self):
membership = Membership.from_signed_raw(membership_raw)
rendered_membership = membership.signed_raw()
from_rendered_membership = Membership.from_signed_raw(rendered_membership)
assert from_rendered_membership.issuer == "HnFcSms8jzwngtVomTTnzudZx7SHUQY8sVE1y8yBmULk"
assert from_rendered_membership.block_number == 0
assert from_rendered_membership.block_hash == "DA39A3EE5E6B4B0D3255BFEF95601890AFD80709"
assert from_rendered_membership.cert_ts == 1416335620
assert from_rendered_membership.uid == "cgeek"
assert from_rendered_membership.signatures[0] == "dkaXIiCYUJtCg8Feh/BKvPYf4uFH9CJ/zY6J4MlA9BsjmcMe4YAblvNt/gJy31b1aGq3ue3h14mLMCu84rraDg=="
assert from_rendered_membership.membership_type == 'IN'
...@@ -43,3 +43,29 @@ class TestPeer: ...@@ -43,3 +43,29 @@ class TestPeer:
assert peer.signatures[0] == "dkaXIiCYUJtCg8Feh/BKvPYf4uFH9CJ/zY6J4MlA9BsjmcMe4YAblvNt/gJy31b1aGq3ue3h14mLMCu84rraDg==" assert peer.signatures[0] == "dkaXIiCYUJtCg8Feh/BKvPYf4uFH9CJ/zY6J4MlA9BsjmcMe4YAblvNt/gJy31b1aGq3ue3h14mLMCu84rraDg=="
def test_fromraw_toraw(self):
peer = Peer.from_signed_raw(rawpeer)
rendered_peer = peer.signed_raw()
from_rendered_peer = Peer.from_signed_raw(rendered_peer)
assert from_rendered_peer.currency == "beta_brousouf"
assert from_rendered_peer.pubkey == "HsLShAtzXTVxeUtQd7yi5Z5Zh4zNvbu8sTEZ53nfKcqY"
assert from_rendered_peer.blockid == "8-1922C324ABC4AF7EF7656734A31F5197888DDD52"
assert len(from_rendered_peer.endpoints) == 3
assert type(from_rendered_peer.endpoints[0]) is BMAEndpoint
assert type(from_rendered_peer.endpoints[1]) is BMAEndpoint
assert type(from_rendered_peer.endpoints[2]) is UnknownEndpoint
assert from_rendered_peer.endpoints[0].server == "some.dns.name"
assert from_rendered_peer.endpoints[0].ipv4 == "88.77.66.55"
assert from_rendered_peer.endpoints[0].ipv6 == "2001:0db8:0000:85a3:0000:0000:ac1f"
assert from_rendered_peer.endpoints[0].port == 9001
assert from_rendered_peer.endpoints[1].server == "some.dns.name"
assert from_rendered_peer.endpoints[1].ipv4 == "88.77.66.55"
assert from_rendered_peer.endpoints[1].ipv6 == "2001:0db8:0000:85a3:0000:0000:ac1f"
assert from_rendered_peer.endpoints[1].port == 9002
assert from_rendered_peer.signatures[0] == "dkaXIiCYUJtCg8Feh/BKvPYf4uFH9CJ/zY6J4MlA9BsjmcMe4YAblvNt/gJy31b1aGq3ue3h14mLMCu84rraDg=="
...@@ -26,3 +26,13 @@ class Test_Status: ...@@ -26,3 +26,13 @@ class Test_Status:
assert status.recipient == "8Fi1VSTbjkXguwThF4v2ZxC5whK7pwG2vcGTkPUPjPGU" assert status.recipient == "8Fi1VSTbjkXguwThF4v2ZxC5whK7pwG2vcGTkPUPjPGU"
assert status.signatures[0] == "dkaXIiCYUJtCg8Feh/BKvPYf4uFH9CJ/zY6J4MlA9BsjmcMe4YAblvNt/gJy31b1aGq3ue3h14mLMCu84rraDg==" assert status.signatures[0] == "dkaXIiCYUJtCg8Feh/BKvPYf4uFH9CJ/zY6J4MlA9BsjmcMe4YAblvNt/gJy31b1aGq3ue3h14mLMCu84rraDg=="
def test_fromraw_toraw(self):
status = Status.from_signed_raw(raw_status)
rendered_status = status.signed_raw()
from_rendered_status = Status.from_signed_raw(rendered_status)
assert from_rendered_status.status == 'UP'
assert from_rendered_status.blockid == "8-1922C324ABC4AF7EF7656734A31F5197888DDD52"
assert from_rendered_status.sender == "HsLShAtzXTVxeUtQd7yi5Z5Zh4zNvbu8sTEZ53nfKcqY"
assert from_rendered_status.recipient == "8Fi1VSTbjkXguwThF4v2ZxC5whK7pwG2vcGTkPUPjPGU"
assert from_rendered_status.signatures[0] == "dkaXIiCYUJtCg8Feh/BKvPYf4uFH9CJ/zY6J4MlA9BsjmcMe4YAblvNt/gJy31b1aGq3ue3h14mLMCu84rraDg=="
...@@ -100,15 +100,15 @@ class Membership(Document): ...@@ -100,15 +100,15 @@ class Membership(Document):
membership_type, uid, cert_ts, signature) membership_type, uid, cert_ts, signature)
def raw(self): def raw(self):
return """ return """Version: {0}
Version: {0}
Type: Membership Type: Membership
Currency: {1} Currency: {1}
Issuer: {2} Issuer: {2}
Block: {3}-{4} Block: {3}-{4}
Membership: {5} Membership: {5}
UserID: {6} UserID: {6}
CertTS: {7}""".format(self.version, CertTS: {7}
""".format(self.version,
self.currency, self.currency,
self.issuer, self.issuer,
self.block_number, self.block_hash, self.block_number, self.block_hash,
......
...@@ -74,8 +74,7 @@ class Peer(Document): ...@@ -74,8 +74,7 @@ class Peer(Document):
return cls(version, currency, pubkey, blockid, endpoints, signature) return cls(version, currency, pubkey, blockid, endpoints, signature)
def raw(self): def raw(self):
doc = """ doc = """Version: {0}
Version: {0}
Type: Peer Type: Peer
Currency: {1} Currency: {1}
PublicKey: {2} PublicKey: {2}
...@@ -116,6 +115,12 @@ class UnknownEndpoint(Endpoint): ...@@ -116,6 +115,12 @@ class UnknownEndpoint(Endpoint):
properties = inline.split()[1:] properties = inline.split()[1:]
return cls(api, properties) return cls(api, properties)
def inline(self):
doc = self.api
for p in self.properties:
doc += " {0}".format(p)
return doc
class BMAEndpoint(Endpoint): class BMAEndpoint(Endpoint):
re_inline = re.compile('^BASIC_MERKLED_API(?: ([a-z_][a-z0-9-_.]+))?(?: ([0-9.]+))?(?: ([0-9a-f:]+))?(?: ([0-9]+))$') re_inline = re.compile('^BASIC_MERKLED_API(?: ([a-z_][a-z0-9-_.]+))?(?: ([0-9.]+))?(?: ([0-9a-f:]+))?(?: ([0-9]+))$')
......
...@@ -73,8 +73,7 @@ class Status(Document): ...@@ -73,8 +73,7 @@ class Status(Document):
sender, recipient, signature) sender, recipient, signature)
def raw(self): def raw(self):
return ''' return '''Version: {0}
Version: {0}
Type: Status Type: Status
Currency: {1} Currency: {1}
Status: {2} Status: {2}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment