from asynctest import TestCase as AsyncTestCase
from ....config.injection_context import InjectionContext
from ..models.connection_record import ConnectionRecord
from ....storage.base import BaseStorage
from ....storage.basic import BasicStorage
[docs]class TestConfig:
test_seed = "testseed000000000000000000000001"
test_did = "55GkHamhTU1ZbTbV2ab9DE"
test_verkey = "3Dn1SJNPaCXcvvJvSbsFWP2xaCjMom3can8CQNhWrTRx"
test_endpoint = "http://localhost"
test_target_did = "GbuDUYXaUZRfHD2jeDuQuP"
test_target_verkey = "9WCgWKUaAJj3VWxxtzvvMQN3AoFxoBtBDo9ntwJnVVCC"
[docs]class TestConnectionRecord(AsyncTestCase, TestConfig):
[docs] def setUp(self):
self.storage = BasicStorage()
self.context = InjectionContext()
self.context.injector.bind_instance(BaseStorage, self.storage)
self.test_info = ConnectionRecord(
my_did=self.test_did,
their_did=self.test_target_did,
their_role=None,
state=ConnectionRecord.STATE_ACTIVE,
)
[docs] async def test_save_retrieve_compare(self):
record = ConnectionRecord(my_did=self.test_did)
record_id = await record.save(self.context)
fetched = await ConnectionRecord.retrieve_by_id(self.context, record_id)
assert fetched and fetched == record
bad_record = ConnectionRecord(my_did=None)
assert bad_record != record
[docs] async def test_active_is_ready(self):
record = ConnectionRecord(
my_did=self.test_did, state=ConnectionRecord.STATE_ACTIVE
)
record_id = await record.save(self.context)
fetched = await ConnectionRecord.retrieve_by_id(self.context, record_id)
assert fetched.is_ready == True
[docs] async def test_response_is_ready(self):
record = ConnectionRecord(
my_did=self.test_did, state=ConnectionRecord.STATE_RESPONSE
)
record_id = await record.save(self.context)
fetched = await ConnectionRecord.retrieve_by_id(self.context, record_id)
assert fetched.is_ready is True
[docs] async def test_request_is_not_ready(self):
record = ConnectionRecord(
my_did=self.test_did, state=ConnectionRecord.STATE_REQUEST
)
record_id = await record.save(self.context)
fetched = await ConnectionRecord.retrieve_by_id(self.context, record_id)
assert fetched.is_ready is False