Skip to content
Snippets Groups Projects
Commit 63b9b060 authored by inso's avatar inso
Browse files

Enhance identity entity

parent 7007425b
No related branches found
No related tags found
No related merge requests found
......@@ -10,8 +10,10 @@ class Identity:
blockstamp = attr.ib(convert=block_uid, default=BlockUID.empty())
signature = attr.ib(convert=str, default="", cmp=False)
timestamp = attr.ib(convert=int, default=0, cmp=False)
written = attr.ib(validator=attr.validators.instance_of(bool), default=False, cmp=False)
revoked = attr.ib(validator=attr.validators.instance_of(bool), default=False, cmp=False)
written_on = attr.ib(convert=block_uid, default=BlockUID.empty(), cmp=False)
revoked_on = attr.ib(convert=block_uid, default=BlockUID.empty(), cmp=False)
member = attr.ib(validator=attr.validators.instance_of(bool), default=False, cmp=False)
membership_buid = attr.ib(convert=block_uid, default=BlockUID.empty(), cmp=False)
membership_timestamp = attr.ib(convert=int, default=0, cmp=False)
membership_type = attr.ib(convert=str, default='', validator=lambda s, a, t: t in ('', 'IN', 'OUT'), cmp=False)
membership_written_on = attr.ib(convert=block_uid, default=BlockUID.empty(), cmp=False)
......@@ -31,11 +31,13 @@ class IdentitiesRepo:
self._conn.execute("""UPDATE identities SET
signature=?,
ts=?,
written=?,
revoked=?,
written_on=?,
revoked_on=?,
member=?,
ms_buid=?,
ms_timestamp=?
ms_timestamp=?,
ms_written_on=?,
ms_type=?
WHERE
currency=? AND
pubkey=? AND
......
......@@ -6,11 +6,13 @@ CREATE TABLE IF NOT EXISTS identities(
blockstamp VARCHAR(100),
signature VARCHAR(100),
ts INT,
written BOOLEAN,
revoked BOOLEAN,
written_on VARCHAR(100),
revoked_on VARCHAR(100),
member BOOLEAN,
ms_buid VARCHAR(100),
ms_timestamp INT,
ms_written_on VARCHAR(100),
ms_type VARCHAR(5),
PRIMARY KEY (currency, pubkey, uid, blockstamp)
);
......
......@@ -25,11 +25,13 @@ class TestIdentitiesRepo(unittest.TestCase):
"20-7518C700E78B56CC21FB1DDC6CBAB24E0FACC9A798F5ED8736EA007F38617D67",
"H41/8OGV2W4CLKbE35kk5t1HJQsb3jEM0/QGLUf80CwJvGZf3HvVCcNtHPUFoUBKEDQO9mPK3KJkqOoxHpqHCw==",
1473108382,
False,
False,
None,
None,
False,
None,
0))
0,
'',
None))
identity = identities_repo.get_one(currency="testcurrency",
pubkey="7Aqw6Efa9EzE7gtsc8SveLLrM7gm6NEGoywSv4FJx6pZ",
uid="john",
......@@ -46,6 +48,7 @@ class TestIdentitiesRepo(unittest.TestCase):
self.assertEqual(identity.member, False)
self.assertEqual(identity.membership_buid, BlockUID.empty())
self.assertEqual(identity.membership_timestamp, 0)
self.assertEqual(identity.membership_written_on, BlockUID.empty())
identities_repo.drop(identity)
identity = identities_repo.get_one(currency="testcurrency",
pubkey="7Aqw6Efa9EzE7gtsc8SveLLrM7gm6NEGoywSv4FJx6pZ",
......@@ -65,21 +68,25 @@ class TestIdentitiesRepo(unittest.TestCase):
"20-7518C700E78B56CC21FB1DDC6CBAB24E0FACC9A798F5ED8736EA007F38617D67",
"H41/8OGV2W4CLKbE35kk5t1HJQsb3jEM0/QGLUf80CwJvGZf3HvVCcNtHPUFoUBKEDQO9mPK3KJkqOoxHpqHCw==",
1473108382,
False,
False,
None,
None,
False,
None,
0))
0,
'',
None))
identities_repo.insert(Identity("testcurrency", "FADxcH5LmXGmGFgdixSes6nWnC4Vb4pRUBYT81zQRhjn",
"doe",
"101-BAD49448A1AD73C978CEDCB8F137D20A5715EBAA739DAEF76B1E28EE67B2C00C",
"H41/8OGV2W4CLKbE35kk5t1HJQsb3jEM0/QGLUf80CwJvGZf3HvVCcNtHPUFoUBKEDQO9mPK3KJkqOoxHpqHCw==",
1455433535,
False,
False,
None,
None,
False,
None,
0))
0,
'',
None))
identities = identities_repo.get_all(currency="testcurrency")
self.assertIn("testcurrency", [i.currency for i in identities])
self.assertIn("john", [i.uid for i in identities])
......@@ -95,11 +102,13 @@ class TestIdentitiesRepo(unittest.TestCase):
"20-7518C700E78B56CC21FB1DDC6CBAB24E0FACC9A798F5ED8736EA007F38617D67",
"H41/8OGV2W4CLKbE35kk5t1HJQsb3jEM0/QGLUf80CwJvGZf3HvVCcNtHPUFoUBKEDQO9mPK3KJkqOoxHpqHCw==",
1473108382,
False,
False,
None,
None,
False,
None,
0)
0,
'',
None)
identities_repo.insert(identity)
identity.member = True
identities_repo.update(identity)
......
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