3.0.ipv8.test.test_configuration ================================ .. py:module:: 3.0.ipv8.test.test_configuration Classes ------- .. autoapisummary:: 3.0.ipv8.test.test_configuration.IPv8ConfigurationSchema 3.0.ipv8.test.test_configuration.TestConfiguration Module Contents --------------- .. py:class:: IPv8ConfigurationSchema(*, only: marshmallow.types.StrSequenceOrSet | None = None, exclude: marshmallow.types.StrSequenceOrSet = (), many: bool | None = None, context: dict | None = None, load_only: marshmallow.types.StrSequenceOrSet = (), dump_only: marshmallow.types.StrSequenceOrSet = (), partial: bool | marshmallow.types.StrSequenceOrSet | None = None, unknown: str | None = None) Bases: :py:obj:`marshmallow.Schema` Schema to check the structure (NOT the defaults!) of the IPv8 configuration dict. .. py:class:: LoggerSchema(*, only: marshmallow.types.StrSequenceOrSet | None = None, exclude: marshmallow.types.StrSequenceOrSet = (), many: bool | None = None, context: dict | None = None, load_only: marshmallow.types.StrSequenceOrSet = (), dump_only: marshmallow.types.StrSequenceOrSet = (), partial: bool | marshmallow.types.StrSequenceOrSet | None = None, unknown: str | None = None) Bases: :py:obj:`marshmallow.Schema` The expected JSON schema for the logger configuration. .. py:attribute:: level .. py:class:: InterfaceSchema(*, only: marshmallow.types.StrSequenceOrSet | None = None, exclude: marshmallow.types.StrSequenceOrSet = (), many: bool | None = None, context: dict | None = None, load_only: marshmallow.types.StrSequenceOrSet = (), dump_only: marshmallow.types.StrSequenceOrSet = (), partial: bool | marshmallow.types.StrSequenceOrSet | None = None, unknown: str | None = None) Bases: :py:obj:`marshmallow.Schema` The expected JSON schema for the interfaces configuration. .. py:attribute:: interface .. py:attribute:: ip .. py:attribute:: port .. py:class:: KeySchema(*, only: marshmallow.types.StrSequenceOrSet | None = None, exclude: marshmallow.types.StrSequenceOrSet = (), many: bool | None = None, context: dict | None = None, load_only: marshmallow.types.StrSequenceOrSet = (), dump_only: marshmallow.types.StrSequenceOrSet = (), partial: bool | marshmallow.types.StrSequenceOrSet | None = None, unknown: str | None = None) Bases: :py:obj:`marshmallow.Schema` The expected JSON schema for the keys configuration. .. py:attribute:: alias .. py:attribute:: generation .. py:attribute:: file .. py:class:: OverlaySchema(*, only: marshmallow.types.StrSequenceOrSet | None = None, exclude: marshmallow.types.StrSequenceOrSet = (), many: bool | None = None, context: dict | None = None, load_only: marshmallow.types.StrSequenceOrSet = (), dump_only: marshmallow.types.StrSequenceOrSet = (), partial: bool | marshmallow.types.StrSequenceOrSet | None = None, unknown: str | None = None) Bases: :py:obj:`marshmallow.Schema` The expected JSON schema for an overlay's configuration. .. py:class:: WalkerSchema(*, only: marshmallow.types.StrSequenceOrSet | None = None, exclude: marshmallow.types.StrSequenceOrSet = (), many: bool | None = None, context: dict | None = None, load_only: marshmallow.types.StrSequenceOrSet = (), dump_only: marshmallow.types.StrSequenceOrSet = (), partial: bool | marshmallow.types.StrSequenceOrSet | None = None, unknown: str | None = None) Bases: :py:obj:`marshmallow.Schema` The expected JSON schema for walker configuration. .. py:attribute:: strategy .. py:attribute:: peers .. py:attribute:: init .. py:attribute:: klass .. py:attribute:: key .. py:attribute:: walkers .. py:attribute:: bootstrappers .. py:attribute:: initialize .. py:attribute:: on_start .. py:attribute:: working_directory .. py:attribute:: logger .. py:attribute:: interfaces .. py:attribute:: keys .. py:attribute:: overlays .. py:attribute:: walker_interval .. py:class:: TestConfiguration Bases: :py:obj:`3.0.ipv8.test.base.TestBase` Tests related to IPv8 configuration. .. py:method:: assertDictInDict(expected: dict, container: dict) -> None Check if a dictionary exists in another dictionary. .. py:method:: test_clear_keys() -> None Check if all keys are cleared when requested. .. py:method:: test_clear_overlays() -> None Check if all overlays are cleared when requested. .. py:method:: test_change_port() -> None Check if changes to the port are finalized. .. py:method:: test_change_address() -> None Check if changes to the address are finalized. .. py:method:: test_set_illegal_log_level() -> None Check if wrong log levels raise an error immediately. .. py:method:: test_change_log_level() -> None Check if changes to the log level are finalized. .. py:method:: test_set_illegal_walk_interval() -> None Check if negative walk intervals raise an error on finalization. .. py:method:: test_change_walk_interval() -> None Check if changes to the walk interval are finalized. .. py:method:: test_add_key_illegal_curve() -> None Check if wrong key curves raise an error immediately. .. py:method:: test_add_key() -> None Check if changes to the keys are finalized. .. py:method:: test_add_key_from_bin() -> None Check if changes to the keys are finalized in bin mode. .. py:method:: test_add_key_from_bin_file() -> None Check if changes to the keys are finalized in bin mode with a file. .. py:method:: test_add_ephemeral_key() -> None Check if ephemeral keys are created correctly. .. py:method:: test_add_overlay_overwrite() -> None Check if the allow duplicate flag does not introduce duplicates. .. py:method:: test_add_overlay_append() -> None Check if the duplicate overlays are simply appended. .. py:method:: test_add_overlay_complex() -> None Check if a complex overlay is correctly added. .. py:method:: test_correct_random_churn_strategy() -> None The DiscoveryCommunity may use the RandomChurn strategy. .. py:method:: test_correct_periodic_similarity_strategy() -> None The DiscoveryCommunity may use the PeriodicSimilarity strategy. .. py:method:: test_default_configuration() -> None Check if we can reconstruct the default configuration. .. py:method:: test_default_schema() -> None Check if the default configuration is JSON-serializable and follows the expected schema.