From e7600304f40f649552d476335e179f4c10ae3573 Mon Sep 17 00:00:00 2001 From: Khwahish Patel Date: Fri, 21 Feb 2025 16:18:43 +0530 Subject: [PATCH 1/3] moved factories to tests --- libp2p/tools/pubsub/dummy_account_node.py | 2 +- tests/__init__.py | 1 + tests/conftest.py | 2 +- tests/core/examples/test_examples.py | 6 +++--- tests/core/host/test_connected_peers.py | 2 +- tests/core/host/test_ping.py | 2 +- tests/core/host/test_routed_host.py | 2 +- tests/core/identity/identify/test_protocol.py | 2 +- tests/core/network/conftest.py | 2 +- tests/core/network/test_notify.py | 6 +++--- tests/core/network/test_swarm.py | 6 +++--- .../core/protocol_muxer/test_protocol_muxer.py | 6 +++--- tests/core/pubsub/test_floodsub.py | 6 +++--- tests/core/pubsub/test_gossipsub.py | 8 ++++---- .../test_gossipsub_backward_compatibility.py | 6 +++--- tests/core/pubsub/test_pubsub.py | 10 +++++----- .../core/security/noise/test_msg_read_writer.py | 2 +- tests/core/security/noise/test_noise.py | 2 +- tests/core/security/test_secio.py | 2 +- .../core/security/test_security_multistream.py | 2 +- tests/core/stream_muxer/conftest.py | 2 +- tests/core/test_libp2p/test_libp2p.py | 6 +++--- {libp2p/tools => tests}/factories.py | 17 +++++++---------- tests/interop/conftest.py | 2 +- tests/interop/test_bindings.py | 2 +- 25 files changed, 52 insertions(+), 54 deletions(-) create mode 100644 tests/__init__.py rename {libp2p/tools => tests}/factories.py (99%) diff --git a/libp2p/tools/pubsub/dummy_account_node.py b/libp2p/tools/pubsub/dummy_account_node.py index 17dab92d4..c208d327a 100644 --- a/libp2p/tools/pubsub/dummy_account_node.py +++ b/libp2p/tools/pubsub/dummy_account_node.py @@ -16,7 +16,7 @@ Service, background_trio_service, ) -from libp2p.tools.factories import ( +from tests.factories import ( PubsubFactory, ) diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 000000000..8685672f8 --- /dev/null +++ b/tests/__init__.py @@ -0,0 +1 @@ +# Empty file to make the tests directory a Python package diff --git a/tests/conftest.py b/tests/conftest.py index 8b34953a7..c1993b886 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -1,6 +1,6 @@ import pytest -from libp2p.tools.factories import ( +from tests.factories import ( HostFactory, ) diff --git a/tests/core/examples/test_examples.py b/tests/core/examples/test_examples.py index 56997bad6..a4df494ca 100644 --- a/tests/core/examples/test_examples.py +++ b/tests/core/examples/test_examples.py @@ -7,12 +7,12 @@ from libp2p.peer.peerinfo import ( info_from_p2p_addr, ) -from libp2p.tools.factories import ( - HostFactory, -) from libp2p.tools.utils import ( MAX_READ_LEN, ) +from tests.factories import ( + HostFactory, +) PROTOCOL_ID = "/chat/1.0.0" diff --git a/tests/core/host/test_connected_peers.py b/tests/core/host/test_connected_peers.py index a9663ddef..990c70791 100644 --- a/tests/core/host/test_connected_peers.py +++ b/tests/core/host/test_connected_peers.py @@ -3,7 +3,7 @@ from libp2p.peer.peerinfo import ( info_from_p2p_addr, ) -from libp2p.tools.factories import ( +from tests.factories import ( HostFactory, ) diff --git a/tests/core/host/test_ping.py b/tests/core/host/test_ping.py index b181a96e7..358ab9cf8 100644 --- a/tests/core/host/test_ping.py +++ b/tests/core/host/test_ping.py @@ -8,7 +8,7 @@ PING_LENGTH, PingService, ) -from libp2p.tools.factories import ( +from tests.factories import ( host_pair_factory, ) diff --git a/tests/core/host/test_routed_host.py b/tests/core/host/test_routed_host.py index d7ccde0d9..e0f87bce2 100644 --- a/tests/core/host/test_routed_host.py +++ b/tests/core/host/test_routed_host.py @@ -6,7 +6,7 @@ from libp2p.peer.peerinfo import ( PeerInfo, ) -from libp2p.tools.factories import ( +from tests.factories import ( HostFactory, RoutedHostFactory, ) diff --git a/tests/core/identity/identify/test_protocol.py b/tests/core/identity/identify/test_protocol.py index 58592d707..a6f073206 100644 --- a/tests/core/identity/identify/test_protocol.py +++ b/tests/core/identity/identify/test_protocol.py @@ -7,7 +7,7 @@ ID, _mk_identify_protobuf, ) -from libp2p.tools.factories import ( +from tests.factories import ( host_pair_factory, ) diff --git a/tests/core/network/conftest.py b/tests/core/network/conftest.py index 42ea87305..dac403b14 100644 --- a/tests/core/network/conftest.py +++ b/tests/core/network/conftest.py @@ -1,6 +1,6 @@ import pytest -from libp2p.tools.factories import ( +from tests.factories import ( net_stream_pair_factory, swarm_conn_pair_factory, swarm_pair_factory, diff --git a/tests/core/network/test_notify.py b/tests/core/network/test_notify.py index f74f3aec2..381b70f87 100644 --- a/tests/core/network/test_notify.py +++ b/tests/core/network/test_notify.py @@ -22,12 +22,12 @@ from libp2p.tools.constants import ( LISTEN_MADDR, ) -from libp2p.tools.factories import ( - SwarmFactory, -) from libp2p.tools.utils import ( connect_swarm, ) +from tests.factories import ( + SwarmFactory, +) class Event(enum.Enum): diff --git a/tests/core/network/test_swarm.py b/tests/core/network/test_swarm.py index d3d6a7f86..c2e908a2d 100644 --- a/tests/core/network/test_swarm.py +++ b/tests/core/network/test_swarm.py @@ -10,12 +10,12 @@ from libp2p.network.exceptions import ( SwarmException, ) -from libp2p.tools.factories import ( - SwarmFactory, -) from libp2p.tools.utils import ( connect_swarm, ) +from tests.factories import ( + SwarmFactory, +) @pytest.mark.trio diff --git a/tests/core/protocol_muxer/test_protocol_muxer.py b/tests/core/protocol_muxer/test_protocol_muxer.py index 1700453d8..1bea50a5b 100644 --- a/tests/core/protocol_muxer/test_protocol_muxer.py +++ b/tests/core/protocol_muxer/test_protocol_muxer.py @@ -6,12 +6,12 @@ from libp2p.host.exceptions import ( StreamFailure, ) -from libp2p.tools.factories import ( - HostFactory, -) from libp2p.tools.utils import ( create_echo_stream_handler, ) +from tests.factories import ( + HostFactory, +) PROTOCOL_ECHO = "/echo/1.0.0" PROTOCOL_POTATO = "/potato/1.0.0" diff --git a/tests/core/pubsub/test_floodsub.py b/tests/core/pubsub/test_floodsub.py index 114001978..9363c2183 100644 --- a/tests/core/pubsub/test_floodsub.py +++ b/tests/core/pubsub/test_floodsub.py @@ -6,9 +6,6 @@ from libp2p.peer.id import ( ID, ) -from libp2p.tools.factories import ( - PubsubFactory, -) from libp2p.tools.pubsub.floodsub_integration_test_settings import ( floodsub_protocol_pytest_params, perform_test_from_obj, @@ -16,6 +13,9 @@ from libp2p.tools.utils import ( connect, ) +from tests.factories import ( + PubsubFactory, +) @pytest.mark.trio diff --git a/tests/core/pubsub/test_gossipsub.py b/tests/core/pubsub/test_gossipsub.py index 8dc1b5756..fff2029a2 100644 --- a/tests/core/pubsub/test_gossipsub.py +++ b/tests/core/pubsub/test_gossipsub.py @@ -6,10 +6,6 @@ from libp2p.pubsub.gossipsub import ( PROTOCOL_ID, ) -from libp2p.tools.factories import ( - IDFactory, - PubsubFactory, -) from libp2p.tools.pubsub.utils import ( dense_connect, one_to_all_connect, @@ -17,6 +13,10 @@ from libp2p.tools.utils import ( connect, ) +from tests.factories import ( + IDFactory, + PubsubFactory, +) @pytest.mark.trio diff --git a/tests/core/pubsub/test_gossipsub_backward_compatibility.py b/tests/core/pubsub/test_gossipsub_backward_compatibility.py index 09c405794..af115d17e 100644 --- a/tests/core/pubsub/test_gossipsub_backward_compatibility.py +++ b/tests/core/pubsub/test_gossipsub_backward_compatibility.py @@ -5,13 +5,13 @@ from libp2p.tools.constants import ( FLOODSUB_PROTOCOL_ID, ) -from libp2p.tools.factories import ( - PubsubFactory, -) from libp2p.tools.pubsub.floodsub_integration_test_settings import ( floodsub_protocol_pytest_params, perform_test_from_obj, ) +from tests.factories import ( + PubsubFactory, +) @pytest.mark.parametrize("test_case_obj", floodsub_protocol_pytest_params) diff --git a/tests/core/pubsub/test_pubsub.py b/tests/core/pubsub/test_pubsub.py index c7fba1af0..3bc96b2d0 100644 --- a/tests/core/pubsub/test_pubsub.py +++ b/tests/core/pubsub/test_pubsub.py @@ -21,11 +21,6 @@ from libp2p.tools.constants import ( MAX_READ_LEN, ) -from libp2p.tools.factories import ( - IDFactory, - PubsubFactory, - net_stream_pair_factory, -) from libp2p.tools.pubsub.utils import ( make_pubsub_msg, ) @@ -35,6 +30,11 @@ from libp2p.utils import ( encode_varint_prefixed, ) +from tests.factories import ( + IDFactory, + PubsubFactory, + net_stream_pair_factory, +) TESTING_TOPIC = "TEST_SUBSCRIBE" TESTING_DATA = b"data" diff --git a/tests/core/security/noise/test_msg_read_writer.py b/tests/core/security/noise/test_msg_read_writer.py index a356f6577..6d84fffc9 100644 --- a/tests/core/security/noise/test_msg_read_writer.py +++ b/tests/core/security/noise/test_msg_read_writer.py @@ -4,7 +4,7 @@ MAX_NOISE_MESSAGE_LEN, NoisePacketReadWriter, ) -from libp2p.tools.factories import ( +from tests.factories import ( raw_conn_factory, ) diff --git a/tests/core/security/noise/test_noise.py b/tests/core/security/noise/test_noise.py index ba15622bc..94dde19b6 100644 --- a/tests/core/security/noise/test_noise.py +++ b/tests/core/security/noise/test_noise.py @@ -3,7 +3,7 @@ from libp2p.security.noise.messages import ( NoiseHandshakePayload, ) -from libp2p.tools.factories import ( +from tests.factories import ( noise_conn_factory, noise_handshake_payload_factory, ) diff --git a/tests/core/security/test_secio.py b/tests/core/security/test_secio.py index e2fd75b47..f2df71a67 100644 --- a/tests/core/security/test_secio.py +++ b/tests/core/security/test_secio.py @@ -14,7 +14,7 @@ from libp2p.tools.constants import ( MAX_READ_LEN, ) -from libp2p.tools.factories import ( +from tests.factories import ( raw_conn_factory, ) diff --git a/tests/core/security/test_security_multistream.py b/tests/core/security/test_security_multistream.py index 38727f9b1..62fb959f1 100644 --- a/tests/core/security/test_security_multistream.py +++ b/tests/core/security/test_security_multistream.py @@ -12,7 +12,7 @@ from libp2p.security.secure_session import ( SecureSession, ) -from libp2p.tools.factories import ( +from tests.factories import ( host_pair_factory, ) diff --git a/tests/core/stream_muxer/conftest.py b/tests/core/stream_muxer/conftest.py index 8d9625e95..c0bcbc32b 100644 --- a/tests/core/stream_muxer/conftest.py +++ b/tests/core/stream_muxer/conftest.py @@ -1,6 +1,6 @@ import pytest -from libp2p.tools.factories import ( +from tests.factories import ( mplex_conn_pair_factory, mplex_stream_pair_factory, ) diff --git a/tests/core/test_libp2p/test_libp2p.py b/tests/core/test_libp2p/test_libp2p.py index 0025f8785..cd7a2156d 100644 --- a/tests/core/test_libp2p/test_libp2p.py +++ b/tests/core/test_libp2p/test_libp2p.py @@ -10,13 +10,13 @@ from libp2p.tools.constants import ( MAX_READ_LEN, ) -from libp2p.tools.factories import ( - HostFactory, -) from libp2p.tools.utils import ( connect, create_echo_stream_handler, ) +from tests.factories import ( + HostFactory, +) PROTOCOL_ID_0 = TProtocol("/echo/0") PROTOCOL_ID_1 = TProtocol("/echo/1") diff --git a/libp2p/tools/factories.py b/tests/factories.py similarity index 99% rename from libp2p/tools/factories.py rename to tests/factories.py index 0558a0626..5ac47aea6 100644 --- a/libp2p/tools/factories.py +++ b/tests/factories.py @@ -102,7 +102,14 @@ background_trio_service, ) from libp2p.tools.constants import ( + FLOODSUB_PROTOCOL_ID, GOSSIPSUB_PARAMS, + GOSSIPSUB_PROTOCOL_ID, + LISTEN_MADDR, +) +from libp2p.tools.utils import ( + connect, + connect_swarm, ) from libp2p.transport.tcp.tcp import ( TCP, @@ -111,16 +118,6 @@ TransportUpgrader, ) -from .constants import ( - FLOODSUB_PROTOCOL_ID, - GOSSIPSUB_PROTOCOL_ID, - LISTEN_MADDR, -) -from .utils import ( - connect, - connect_swarm, -) - DEFAULT_SECURITY_PROTOCOL_ID = PLAINTEXT_PROTOCOL_ID diff --git a/tests/interop/conftest.py b/tests/interop/conftest.py index 372135aa4..728dddda0 100644 --- a/tests/interop/conftest.py +++ b/tests/interop/conftest.py @@ -17,7 +17,7 @@ ) from libp2p.security.noise.transport import PROTOCOL_ID as NOISE_PROTOCOL_ID from libp2p.security.secio.transport import ID as SECIO_PROTOCOL_ID -from libp2p.tools.factories import ( +from tests.factories import ( HostFactory, PubsubFactory, ) diff --git a/tests/interop/test_bindings.py b/tests/interop/test_bindings.py index 759cf5dee..f38fad5c1 100644 --- a/tests/interop/test_bindings.py +++ b/tests/interop/test_bindings.py @@ -1,7 +1,7 @@ import pytest import trio -from libp2p.tools.factories import ( +from tests.factories import ( HostFactory, ) from tests.utils.interop.utils import ( From 6dd136151be9d501c913cc522b1f800384083c1e Mon Sep 17 00:00:00 2001 From: Khwahish Patel Date: Tue, 25 Feb 2025 00:14:10 +0530 Subject: [PATCH 2/3] excluded documentation for tests dir --- Makefile | 2 +- tests/__init__.py | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 6773e5a21..33f738d6d 100644 --- a/Makefile +++ b/Makefile @@ -80,7 +80,7 @@ validate-newsfragments: check-docs: build-docs validate-newsfragments build-docs: - sphinx-apidoc -o docs/ . setup.py "*conftest*" + sphinx-apidoc -o docs/ . setup.py "*conftest*" tests $(MAKE) -C docs clean $(MAKE) -C docs html $(MAKE) -C docs doctest diff --git a/tests/__init__.py b/tests/__init__.py index 8685672f8..e69de29bb 100644 --- a/tests/__init__.py +++ b/tests/__init__.py @@ -1 +0,0 @@ -# Empty file to make the tests directory a Python package From 8d7073c99d6ce0d24bd11804c379927917b168ae Mon Sep 17 00:00:00 2001 From: Khwahish Patel Date: Tue, 25 Feb 2025 00:23:28 +0530 Subject: [PATCH 3/3] added newsfragment --- Makefile | 2 +- newsfragments/503.internal.rst | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 newsfragments/503.internal.rst diff --git a/Makefile b/Makefile index 33f738d6d..b0d6100c0 100644 --- a/Makefile +++ b/Makefile @@ -80,7 +80,7 @@ validate-newsfragments: check-docs: build-docs validate-newsfragments build-docs: - sphinx-apidoc -o docs/ . setup.py "*conftest*" tests + sphinx-apidoc -o docs/ . setup.py "*conftest*" tests/ $(MAKE) -C docs clean $(MAKE) -C docs html $(MAKE) -C docs doctest diff --git a/newsfragments/503.internal.rst b/newsfragments/503.internal.rst new file mode 100644 index 000000000..c991d16be --- /dev/null +++ b/newsfragments/503.internal.rst @@ -0,0 +1 @@ +moved ``libp2p/tools/factories`` to ``tests``.