packages.valory.skills.registration_abci.tests.test_behaviours
Tests for valory/registration_abci skill's behaviours.
test_skill_public_id
def test_skill_public_id() -> None
Test skill module public ID
consume
def consume(iterator: Iterable) -> None
Consume the iterator
as_context
@contextmanager
def as_context(*contexts: Any) -> Generator[None, None, None]
Set contexts
RegistrationAbciBaseCase Objects
class RegistrationAbciBaseCase(FSMBehaviourBaseCase)
Base case for testing RegistrationAbci FSMBehaviour.
BaseRegistrationTestBehaviour Objects
class BaseRegistrationTestBehaviour(RegistrationAbciBaseCase)
Base test case to test RegistrationBehaviour.
test_registration
@pytest.mark.parametrize(
"setup_data, expected_initialisation",
(
({}, '{"db_data": {"0": {}}, "slashing_config": ""}'),
({
"test": []
}, '{"db_data": {"0": {}}, "slashing_config": ""}'),
(
{
"test": [],
"valid": [1, 2]
},
'{"db_data": {"0": {"valid": [1, 2]}}, "slashing_config": ""}',
),
),
)
def test_registration(setup_data: Dict,
expected_initialisation: Optional[str]) -> None
Test registration.
TestRegistrationStartupBehaviour Objects
class TestRegistrationStartupBehaviour(RegistrationAbciBaseCase)
Test case to test RegistrationStartupBehaviour.
setup_method
def setup_method(**kwargs: Any) -> None
Setup
teardown_method
def teardown_method(**kwargs: Any) -> None
Teardown.
agent_instances
@property
def agent_instances() -> List[str]
Agent instance addresses
state
@property
def state() -> RegistrationStartupBehaviour
Current behavioural state
logger
@property
def logger() -> str
Logger
mocked_service_registry_address
@property
def mocked_service_registry_address() -> mock._patch_dict
Mocked service registry address
mocked_on_chain_service_id
@property
def mocked_on_chain_service_id() -> mock._patch_dict
Mocked on chain service id
mocked_wait_for_condition
def mocked_wait_for_condition(should_timeout: bool) -> mock._patch
Mock BaseBehaviour.wait_for_condition
mocked_yield_from_sleep
@property
def mocked_yield_from_sleep() -> mock._patch
Mock yield from sleep
mock_is_correct_contract
def mock_is_correct_contract(error_response: bool = False) -> None
Mock service registry contract call to for contract verification
mock_get_agent_instances
def mock_get_agent_instances(*agent_instances: str,
error_response: bool = False) -> None
Mock get agent instances
mock_tendermint_request
def mock_tendermint_request(request_kwargs: Dict,
response_kwargs: Dict) -> None
Mock Tendermint request.
mock_get_tendermint_info
def mock_get_tendermint_info(*addresses: str) -> None
Mock get Tendermint info
mock_get_local_tendermint_params
def mock_get_local_tendermint_params(valid_response: bool = True) -> None
Mock Tendermint get local params
mock_tendermint_update
def mock_tendermint_update(valid_response: bool = True) -> None
Mock Tendermint update
set_last_timestamp
def set_last_timestamp(last_timestamp: Optional[datetime.datetime]) -> None
Set last timestamp
dummy_reset_tendermint_with_wait_wrapper
@staticmethod
def dummy_reset_tendermint_with_wait_wrapper(
valid_response: bool
) -> Callable[[], Generator[None, None, Optional[bool]]]
Wrapper for a Dummy reset_tendermint_with_wait method.
test_init
def test_init() -> None
Empty init
test_no_contract_address
def test_no_contract_address(caplog: LogCaptureFixture) -> None
Test service registry contract address not provided
test_request_personal
@pytest.mark.parametrize("valid_response", [True, False])
def test_request_personal(valid_response: bool,
caplog: LogCaptureFixture) -> None
Test get tendermint configuration
test_failed_verification
def test_failed_verification(caplog: LogCaptureFixture) -> None
Test service registry contract not correctly deployed
test_on_chain_service_id_not_set
def test_on_chain_service_id_not_set(caplog: LogCaptureFixture) -> None
Test get_addresses when on_chain_service_id is None.
test_failed_service_info
def test_failed_service_info(caplog: LogCaptureFixture) -> None
Test get service info failure
test_no_agents_registered
def test_no_agents_registered(caplog: LogCaptureFixture) -> None
Test no agent instances registered
test_self_not_registered
def test_self_not_registered(caplog: LogCaptureFixture) -> None
Test node operator agent not registered
test_response_service_info
def test_response_service_info(caplog: LogCaptureFixture) -> None
Test registered addresses retrieved
test_collection_complete
def test_collection_complete(caplog: LogCaptureFixture) -> None
Test registered addresses retrieved
test_request_update
@pytest.mark.parametrize("valid_response", [True, False])
@mock.patch.object(BaseBehaviour, "reset_tendermint_with_wait")
def test_request_update(_: mock.Mock, valid_response: bool,
caplog: LogCaptureFixture) -> None
Test Tendermint config update
test_request_restart
@pytest.mark.parametrize(
"valid_response, last_timestamp, timeout",
[
(True, _time_in_past, False),
(False, _time_in_past, False),
(True, _time_in_future, False),
(False, _time_in_future, False),
(True, None, False),
(False, None, False),
(True, None, True),
(False, None, True),
],
)
def test_request_restart(valid_response: bool,
last_timestamp: Optional[datetime.datetime],
timeout: bool, caplog: LogCaptureFixture) -> None
Test Tendermint start
TestRegistrationStartupBehaviourNoConfigShare Objects
class TestRegistrationStartupBehaviourNoConfigShare(
BaseRegistrationTestBehaviour)
Test case to test RegistrationBehaviour.
TestRegistrationBehaviour Objects
class TestRegistrationBehaviour(BaseRegistrationTestBehaviour)
Test case to test RegistrationBehaviour.