diff --git a/Cargo.toml b/Cargo.toml index 6c956687c8..3a6f198198 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -12,7 +12,7 @@ members = [ "node/common", "node/invariants", "node/native", - "node/testing", + "tools/testing", "node/web", "p2p", "p2p/libp2p-rpc-behaviour", @@ -142,7 +142,7 @@ mina-node-account = { path = "node/account" } mina-node-common = { path = "node/common" } mina-node-invariants = { path = "node/invariants" } mina-node-native = { path = "node/native" } -mina-node-testing = { path = "node/testing" } +mina-node-testing = { path = "tools/testing" } mina-p2p-messages = { path = "mina-p2p-messages" } mina-poseidon = { git = "https://github.com/o1-labs/proof-systems", tag = "0.2.0" } mina-signer = { git = "https://github.com/o1-labs/proof-systems", tag = "0.2.0" } diff --git a/Makefile b/Makefile index 3fae0e6d0c..0f4bae7fa5 100644 --- a/Makefile +++ b/Makefile @@ -368,7 +368,7 @@ docker-build-bootstrap-sandbox: ## Build bootstrap sandbox Docker image .PHONY: docker-build-debugger docker-build-debugger: ## Build debugger Docker image docker build -t $(DOCKER_ORG)/mina-rust-debugger:$(GIT_COMMIT) \ - -f node/testing/docker/Dockerfile.debugger node/testing/docker/ + -f tools/testing/docker/Dockerfile.debugger tools/testing/docker/ .PHONY: docker-build-frontend docker-build-frontend: ## Build frontend Docker image @@ -395,12 +395,12 @@ docker-build-fuzzing: ## Build fuzzing Docker image .PHONY: docker-build-light docker-build-light: ## Build light Docker image docker build -t $(DOCKER_ORG)/mina-rust-light:$(GIT_COMMIT) \ - -f node/testing/docker/Dockerfile.light node/testing/docker/ + -f tools/testing/docker/Dockerfile.light tools/testing/docker/ .PHONY: docker-build-light-focal docker-build-light-focal: ## Build light focal Docker image docker build -t $(DOCKER_ORG)/mina-rust-light-focal:$(GIT_COMMIT) \ - -f node/testing/docker/Dockerfile.light.focal node/testing/docker/ + -f tools/testing/docker/Dockerfile.light.focal tools/testing/docker/ .PHONY: docker-build-mina docker-build-mina: ## Build main Mina Docker image @@ -419,12 +419,12 @@ docker-build-mina: ## Build main Mina Docker image .PHONY: docker-build-mina-testing docker-build-mina-testing: ## Build Mina testing Docker image docker build -t $(DOCKER_ORG)/mina-rust-testing:$(GIT_COMMIT) \ - -f node/testing/docker/Dockerfile.mina node/testing/docker/ + -f tools/testing/docker/Dockerfile.mina tools/testing/docker/ .PHONY: docker-build-test docker-build-test: ## Build test Docker image docker build -t $(DOCKER_ORG)/mina-rust-test:$(GIT_COMMIT) \ - -f node/testing/docker/Dockerfile.test node/testing/docker/ + -f tools/testing/docker/Dockerfile.test tools/testing/docker/ # Docker push targets diff --git a/README.md b/README.md index 917088ca96..baeb1b7702 100644 --- a/README.md +++ b/README.md @@ -66,7 +66,7 @@ This repository contains the complete Mina Rust Node implementation: - [node/](node) - Combines all the business logic of the node. - [native/](node/native) - OS specific pieces of the node, which is used to run the node natively (Linux/Mac/Windows). - - [testing/](node/testing) - Testing framework for Mina node. + - [testing/](tools/testing) - Testing framework for Mina node. - [cli/](cli) - Mina CLI. - [frontend/](frontend) - OpenMina frontend. diff --git a/node/common/Cargo.toml b/node/common/Cargo.toml index e1d2867b39..a7119f6a7f 100644 --- a/node/common/Cargo.toml +++ b/node/common/Cargo.toml @@ -48,5 +48,7 @@ google-cloud-storage = { workspace = true } google-cloud-auth = { workspace = true } [features] +# won't compile without this on +default = ["p2p-webrtc"] p2p-webrtc = ["node/p2p-webrtc"] p2p-libp2p = ["node/p2p-libp2p"] diff --git a/node/testing/docker/README.md b/node/testing/docker/README.md deleted file mode 100644 index ac0f69ae18..0000000000 --- a/node/testing/docker/README.md +++ /dev/null @@ -1,7 +0,0 @@ -``` -docker build -t vladsimplestakingcom/mina-light:2.0.0rampup4 -f node/testing/docker/Dockerfile.light node/testing/docker -docker build -t vladsimplestakingcom/mina-light:2.0.0rampup4-focal -f node/testing/docker/Dockerfile.light.focal node/testing/docker -docker build -t vladsimplestakingcom/mina-openmina-builder:focal -f node/testing/docker/Dockerfile.openmina node/testing/docker -docker build -t vladsimplestakingcom/mina-testenv:2.0.0rampup4-focal -f node/testing/docker/Dockerfile.test node/testing/docker -docker build -t vladsimplestakingcom/mina-debugger:2.0.0rampup4-focal -f node/testing/docker/Dockerfile.debugger node/testing/docker -``` diff --git a/p2p/testing.md b/p2p/testing.md index 92175443fb..45302fae4a 100644 --- a/p2p/testing.md +++ b/p2p/testing.md @@ -7,11 +7,11 @@ If two nodes are connecting to each other at the same time, they should be connected, so each one has exactly one connection. -- [`p2p_basic_connections(simultaneous_connections)`](../node/testing/src/scenarios/p2p/basic_connection_handling.rs#L25) +- [`p2p_basic_connections(simultaneous_connections)`](../tools/testing/src/scenarios/p2p/basic_connection_handling.rs#L25) ### Two Rust nodes shouldn't be disconnected for a while after they are connected -- [`p2p_basic_connections(connection_stbility)`](../node/testing/src/scenarios/p2p/basic_connection_handling.rs#L342) +- [`p2p_basic_connections(connection_stbility)`](../tools/testing/src/scenarios/p2p/basic_connection_handling.rs#L342) ### All connections should be tracked by the state machine @@ -20,14 +20,14 @@ should be present in the state machine. **Tests:** -- [`p2p_basic_connections(all_nodes_connections_are_symmetric)`](../node/testing/src/scenarios/p2p/basic_connection_handling.rs#L98) -- [`p2p_basic_connections(seed_connections_are_symmetric)`](../node/testing/src/scenarios/p2p/basic_connection_handling.rs#L165) +- [`p2p_basic_connections(all_nodes_connections_are_symmetric)`](../tools/testing/src/scenarios/p2p/basic_connection_handling.rs#L98) +- [`p2p_basic_connections(seed_connections_are_symmetric)`](../tools/testing/src/scenarios/p2p/basic_connection_handling.rs#L165) ### Number of active peers should not exceed configured maximum number **Tests:** -- [`p2p_basic_connections(max_number_of_peers)`](../node/testing/src/scenarios/p2p/basic_connection_handling.rs#L248) +- [`p2p_basic_connections(max_number_of_peers)`](../tools/testing/src/scenarios/p2p/basic_connection_handling.rs#L248) ## Incoming Connections @@ -37,10 +37,10 @@ We should accept an incoming connection from an arbitrary node. **Tests:** -- [p2p_basic_incoming(accept_connection)](../node/testing/src/scenarios/p2p/basic_incoming_connections.rs#L16) -- [p2p_basic_incoming(accept_multiple_connections)](../node/testing/src/scenarios/p2p/basic_incoming_connections.rs#L62) -- [solo_node_accept_incoming](../node/testing/src/scenarios/solo_node/basic_connectivity_accept_incoming.rs) -- [multi_node_connection_discovery/OCamlToRust](../node/testing/src/scenarios/multi_node/connection_discovery.rs#L127) +- [p2p_basic_incoming(accept_connection)](../tools/testing/src/scenarios/p2p/basic_incoming_connections.rs#L16) +- [p2p_basic_incoming(accept_multiple_connections)](../tools/testing/src/scenarios/p2p/basic_incoming_connections.rs#L62) +- [solo_node_accept_incoming](../tools/testing/src/scenarios/solo_node/basic_connectivity_accept_incoming.rs) +- [multi_node_connection_discovery/OCamlToRust](../tools/testing/src/scenarios/multi_node/connection_discovery.rs#L127) (should be replaced with one with non-OCaml peer) - TODO: fast-running short test @@ -59,14 +59,14 @@ malicious node that uses the same peer ID. **Tests:** -- [`p2p_basic_incoming(does_not_accept_self_connection)`](../node/testing/src/scenarios/p2p/basic_incoming_connections.rs#L120) +- [`p2p_basic_incoming(does_not_accept_self_connection)`](../tools/testing/src/scenarios/p2p/basic_incoming_connections.rs#L120) ## Outgoing connections ### Node should connect to other nodes -- [`p2p_basic_outgoing(make_connection)`](../node/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L19) -- [`p2p_basic_outgoing(make_multiple_connections)`](../node/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L74) +- [`p2p_basic_outgoing(make_connection)`](../tools/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L19) +- [`p2p_basic_outgoing(make_multiple_connections)`](../tools/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L74) ### Node shouldn't try to make outgoing connection using its own peer_id @@ -75,21 +75,21 @@ connecting to new peers. **Tests:** -- [`p2p_basic_outgoing(dont_connect_to_node_same_id)`](node/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L134) -- [`p2p_basic_outgoing(dont_connect_to_initial_peer_same_id)`](node/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L187) -- [`p2p_basic_outgoing(dont_connect_to_self_initial_peer)`](node/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L226) +- [`p2p_basic_outgoing(dont_connect_to_node_same_id)`](tools/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L134) +- [`p2p_basic_outgoing(dont_connect_to_initial_peer_same_id)`](tools/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L187) +- [`p2p_basic_outgoing(dont_connect_to_self_initial_peer)`](tools/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L226) ### Node should connect to all available initial peers TODO: what if the number of initial peers exceeds the max number of peers? -- [`p2p_basic_outgoing(connect_to_all_initial_peers)`](../node/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L293) -- [multi_node_initial_joining](../node/testing/src/scenarios/multi_node/basic_connectivity_initial_joining.rs) +- [`p2p_basic_outgoing(connect_to_all_initial_peers)`](../tools/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L293) +- [multi_node_initial_joining](../tools/testing/src/scenarios/multi_node/basic_connectivity_initial_joining.rs) (partially?) ### Node should retry connecting to unavailable initial peers -- [`p2p_basic_outgoing(connect_to_unavailableinitial_peers)`](../node/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L433) +- [`p2p_basic_outgoing(connect_to_unavailableinitial_peers)`](../tools/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L433) ### Node should be able to connect to initial peers eventually, even if initially they are not available. @@ -101,7 +101,7 @@ TODO: Use cases where this is important. **Tests:** -- [`p2p_basic_outgoing(connect_to_all_initial_peers_become_ready)`](../node/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L362) +- [`p2p_basic_outgoing(connect_to_all_initial_peers_become_ready)`](../tools/testing/src/scenarios/p2p/basic_outgoing_connections.rs#L362) ### Node should have a reasonable retry rate for reconnection @@ -114,7 +114,7 @@ Rust node shouldn't reconnect too soon to a node that dropped the connection. ### Node advertises itself through Kademlia -- [solo_node_accept_incoming](../node/testing/src/scenarios/solo_node/basic_connectivity_accept_incoming.rs) +- [solo_node_accept_incoming](../tools/testing/src/scenarios/solo_node/basic_connectivity_accept_incoming.rs) (TODO: should be replaced by one with Rust-only peer) ### Node should be able to perform initial peer selection (Kademlia "bootstrap") @@ -135,9 +135,9 @@ returns a list of peers that are "close" to some random peer. This step starts after Kademlia initialization is complete. -- [multi_node_peer_discovery](../node/testing/src/scenarios/multi_node/basic_connectivity_peer_discovery.rs) +- [multi_node_peer_discovery](../tools/testing/src/scenarios/multi_node/basic_connectivity_peer_discovery.rs) (partially, should be replaced with one with a non-OCaml peer) -- [multi_node_connection_discovery/OCamlToRust](../node/testing/src/scenarios/multi_node/connection_discovery.rs#L127) +- [multi_node_connection_discovery/OCamlToRust](../tools/testing/src/scenarios/multi_node/connection_discovery.rs#L127) (indirectly, should be replaced with one with a non-OCaml peer) - TODO: fast-running Rust-only test @@ -155,33 +155,33 @@ node behind NAT shouldn't advertise its address obtained using external ### Advertising to OCaml nodes -- [solo_node_accept_incoming](../node/testing/src/scenarios/solo_node/basic_connectivity_accept_incoming.rs) -- [multi_node_connection_discovery/OCamlToRustViaSeed](../node/testing/src/scenarios/multi_node/connection_discovery.rs#L267) +- [solo_node_accept_incoming](../tools/testing/src/scenarios/solo_node/basic_connectivity_accept_incoming.rs) +- [multi_node_connection_discovery/OCamlToRustViaSeed](../tools/testing/src/scenarios/multi_node/connection_discovery.rs#L267) ### Peer discovery via Rust node If a Rust node is used as a seed node, OCaml nodes connected to it should be able to also discover and connect to each other. -- [multi_node_connection_discovery/RustAsSeed](../node/testing/src/scenarios/multi_node/connection_discovery.rs#L25) +- [multi_node_connection_discovery/RustAsSeed](../tools/testing/src/scenarios/multi_node/connection_discovery.rs#L25) ### Peer discovery using OCaml seed node -- [multi_node_peer_discovery](../node/testing/src/scenarios/multi_node/basic_connectivity_peer_discovery.rs) -- [multi_node_connection_discovery/RustToOCamlViaSeed](../node/testing/src/scenarios/multi_node/connection_discovery.rs#L362) +- [multi_node_peer_discovery](../tools/testing/src/scenarios/multi_node/basic_connectivity_peer_discovery.rs) +- [multi_node_connection_discovery/RustToOCamlViaSeed](../tools/testing/src/scenarios/multi_node/connection_discovery.rs#L362) ## Incoming Connections ### OCaml node should be able to successfully connect to a Rust node -- [solo_node_accept_incoming](../node/testing/src/scenarios/solo_node/basic_connectivity_accept_incoming.rs) -- [multi_node_connection_discovery/OCamlToRust](../node/testing/src/scenarios/multi_node/connection_discovery.rs#L127) +- [solo_node_accept_incoming](../tools/testing/src/scenarios/solo_node/basic_connectivity_accept_incoming.rs) +- [multi_node_connection_discovery/OCamlToRust](../tools/testing/src/scenarios/multi_node/connection_discovery.rs#L127) ## Outgoing Connections ### Rust node should be able to successfully connect to an OCaml node -- [multi_node_connection_discovery/RustToOCaml](../node/testing/src/scenarios/multi_node/connection_discovery.rs#201) +- [multi_node_connection_discovery/RustToOCaml](../tools/testing/src/scenarios/multi_node/connection_discovery.rs#201) # General Safety @@ -192,7 +192,7 @@ able to also discover and connect to each other. The node should connect to as many peers as it is configured to (between min and max number). -- [multi_node_initial_joining](../node/testing/src/scenarios/multi_node/basic_connectivity_initial_joining.rs) +- [multi_node_initial_joining](../tools/testing/src/scenarios/multi_node/basic_connectivity_initial_joining.rs) ### Peer disconnection diff --git a/p2p/testing/README.md b/p2p/testing/README.md index 1641d3973b..91439e88d7 100644 --- a/p2p/testing/README.md +++ b/p2p/testing/README.md @@ -1,6 +1,6 @@ ### P2p Testing Framework -This is a lighter version of the [Testing Framework](../../node/testing/) that +This is a lighter version of the [Testing Framework](../../tools/testing/) that is focused on peer-to-peer functionality of the Rust node. It allows to set up, run and observe clusters of peers that implement Mina p2p diff --git a/node/testing/Cargo.toml b/tools/testing/Cargo.toml similarity index 100% rename from node/testing/Cargo.toml rename to tools/testing/Cargo.toml diff --git a/node/testing/data/daemon.json b/tools/testing/data/daemon.json similarity index 100% rename from node/testing/data/daemon.json rename to tools/testing/data/daemon.json diff --git a/node/testing/docker/Dockerfile.debugger b/tools/testing/docker/Dockerfile.debugger similarity index 100% rename from node/testing/docker/Dockerfile.debugger rename to tools/testing/docker/Dockerfile.debugger diff --git a/node/testing/docker/Dockerfile.light b/tools/testing/docker/Dockerfile.light similarity index 100% rename from node/testing/docker/Dockerfile.light rename to tools/testing/docker/Dockerfile.light diff --git a/node/testing/docker/Dockerfile.light.focal b/tools/testing/docker/Dockerfile.light.focal similarity index 100% rename from node/testing/docker/Dockerfile.light.focal rename to tools/testing/docker/Dockerfile.light.focal diff --git a/node/testing/docker/Dockerfile.mina b/tools/testing/docker/Dockerfile.mina similarity index 100% rename from node/testing/docker/Dockerfile.mina rename to tools/testing/docker/Dockerfile.mina diff --git a/node/testing/docker/Dockerfile.test b/tools/testing/docker/Dockerfile.test similarity index 100% rename from node/testing/docker/Dockerfile.test rename to tools/testing/docker/Dockerfile.test diff --git a/tools/testing/docker/README.md b/tools/testing/docker/README.md new file mode 100644 index 0000000000..8351e88a86 --- /dev/null +++ b/tools/testing/docker/README.md @@ -0,0 +1,7 @@ +``` +docker build -t vladsimplestakingcom/mina-light:2.0.0rampup4 -f tools/testing/docker/Dockerfile.light tools/testing/docker +docker build -t vladsimplestakingcom/mina-light:2.0.0rampup4-focal -f tools/testing/docker/Dockerfile.light.focal tools/testing/docker +docker build -t vladsimplestakingcom/mina-openmina-builder:focal -f tools/testing/docker/Dockerfile.openmina tools/testing/docker +docker build -t vladsimplestakingcom/mina-testenv:2.0.0rampup4-focal -f tools/testing/docker/Dockerfile.test tools/testing/docker +docker build -t vladsimplestakingcom/mina-debugger:2.0.0rampup4-focal -f tools/testing/docker/Dockerfile.debugger tools/testing/docker +``` diff --git a/node/testing/docker/current b/tools/testing/docker/current similarity index 100% rename from node/testing/docker/current rename to tools/testing/docker/current diff --git a/node/testing/docker/patch b/tools/testing/docker/patch similarity index 100% rename from node/testing/docker/patch rename to tools/testing/docker/patch diff --git a/node/testing/peer-discovery-test.md b/tools/testing/peer-discovery-test.md similarity index 100% rename from node/testing/peer-discovery-test.md rename to tools/testing/peer-discovery-test.md diff --git a/node/testing/src/bin/runner.rs b/tools/testing/src/bin/runner.rs similarity index 100% rename from node/testing/src/bin/runner.rs rename to tools/testing/src/bin/runner.rs diff --git a/node/testing/src/cluster/config.rs b/tools/testing/src/cluster/config.rs similarity index 100% rename from node/testing/src/cluster/config.rs rename to tools/testing/src/cluster/config.rs diff --git a/node/testing/src/cluster/mod.rs b/tools/testing/src/cluster/mod.rs similarity index 100% rename from node/testing/src/cluster/mod.rs rename to tools/testing/src/cluster/mod.rs diff --git a/node/testing/src/cluster/node_id.rs b/tools/testing/src/cluster/node_id.rs similarity index 100% rename from node/testing/src/cluster/node_id.rs rename to tools/testing/src/cluster/node_id.rs diff --git a/node/testing/src/cluster/p2p_task_spawner.rs b/tools/testing/src/cluster/p2p_task_spawner.rs similarity index 100% rename from node/testing/src/cluster/p2p_task_spawner.rs rename to tools/testing/src/cluster/p2p_task_spawner.rs diff --git a/node/testing/src/cluster/runner/mod.rs b/tools/testing/src/cluster/runner/mod.rs similarity index 100% rename from node/testing/src/cluster/runner/mod.rs rename to tools/testing/src/cluster/runner/mod.rs diff --git a/node/testing/src/cluster/runner/run.rs b/tools/testing/src/cluster/runner/run.rs similarity index 100% rename from node/testing/src/cluster/runner/run.rs rename to tools/testing/src/cluster/runner/run.rs diff --git a/node/testing/src/exit_with_error.rs b/tools/testing/src/exit_with_error.rs similarity index 100% rename from node/testing/src/exit_with_error.rs rename to tools/testing/src/exit_with_error.rs diff --git a/node/testing/src/hosts.rs b/tools/testing/src/hosts.rs similarity index 100% rename from node/testing/src/hosts.rs rename to tools/testing/src/hosts.rs diff --git a/node/testing/src/lib.rs b/tools/testing/src/lib.rs similarity index 100% rename from node/testing/src/lib.rs rename to tools/testing/src/lib.rs diff --git a/node/testing/src/main.rs b/tools/testing/src/main.rs similarity index 100% rename from node/testing/src/main.rs rename to tools/testing/src/main.rs diff --git a/node/testing/src/network_debugger.rs b/tools/testing/src/network_debugger.rs similarity index 100% rename from node/testing/src/network_debugger.rs rename to tools/testing/src/network_debugger.rs diff --git a/node/testing/src/node/config.rs b/tools/testing/src/node/config.rs similarity index 100% rename from node/testing/src/node/config.rs rename to tools/testing/src/node/config.rs diff --git a/node/testing/src/node/mod.rs b/tools/testing/src/node/mod.rs similarity index 100% rename from node/testing/src/node/mod.rs rename to tools/testing/src/node/mod.rs diff --git a/node/testing/src/node/ocaml/config.rs b/tools/testing/src/node/ocaml/config.rs similarity index 100% rename from node/testing/src/node/ocaml/config.rs rename to tools/testing/src/node/ocaml/config.rs diff --git a/node/testing/src/node/ocaml/mod.rs b/tools/testing/src/node/ocaml/mod.rs similarity index 100% rename from node/testing/src/node/ocaml/mod.rs rename to tools/testing/src/node/ocaml/mod.rs diff --git a/node/testing/src/node/rust/config.rs b/tools/testing/src/node/rust/config.rs similarity index 100% rename from node/testing/src/node/rust/config.rs rename to tools/testing/src/node/rust/config.rs diff --git a/node/testing/src/node/rust/event.rs b/tools/testing/src/node/rust/event.rs similarity index 100% rename from node/testing/src/node/rust/event.rs rename to tools/testing/src/node/rust/event.rs diff --git a/node/testing/src/node/rust/mod.rs b/tools/testing/src/node/rust/mod.rs similarity index 100% rename from node/testing/src/node/rust/mod.rs rename to tools/testing/src/node/rust/mod.rs diff --git a/node/testing/src/scenario/event_details.rs b/tools/testing/src/scenario/event_details.rs similarity index 100% rename from node/testing/src/scenario/event_details.rs rename to tools/testing/src/scenario/event_details.rs diff --git a/node/testing/src/scenario/id.rs b/tools/testing/src/scenario/id.rs similarity index 100% rename from node/testing/src/scenario/id.rs rename to tools/testing/src/scenario/id.rs diff --git a/node/testing/src/scenario/mod.rs b/tools/testing/src/scenario/mod.rs similarity index 100% rename from node/testing/src/scenario/mod.rs rename to tools/testing/src/scenario/mod.rs diff --git a/node/testing/src/scenario/step.rs b/tools/testing/src/scenario/step.rs similarity index 100% rename from node/testing/src/scenario/step.rs rename to tools/testing/src/scenario/step.rs diff --git a/node/testing/src/scenarios/driver.rs b/tools/testing/src/scenarios/driver.rs similarity index 100% rename from node/testing/src/scenarios/driver.rs rename to tools/testing/src/scenarios/driver.rs diff --git a/node/testing/src/scenarios/mod.rs b/tools/testing/src/scenarios/mod.rs similarity index 100% rename from node/testing/src/scenarios/mod.rs rename to tools/testing/src/scenarios/mod.rs diff --git a/node/testing/src/scenarios/multi_node/basic_connectivity_initial_joining.rs b/tools/testing/src/scenarios/multi_node/basic_connectivity_initial_joining.rs similarity index 100% rename from node/testing/src/scenarios/multi_node/basic_connectivity_initial_joining.rs rename to tools/testing/src/scenarios/multi_node/basic_connectivity_initial_joining.rs diff --git a/node/testing/src/scenarios/multi_node/basic_connectivity_peer_discovery.rs b/tools/testing/src/scenarios/multi_node/basic_connectivity_peer_discovery.rs similarity index 100% rename from node/testing/src/scenarios/multi_node/basic_connectivity_peer_discovery.rs rename to tools/testing/src/scenarios/multi_node/basic_connectivity_peer_discovery.rs diff --git a/node/testing/src/scenarios/multi_node/connection_discovery.md b/tools/testing/src/scenarios/multi_node/connection_discovery.md similarity index 100% rename from node/testing/src/scenarios/multi_node/connection_discovery.md rename to tools/testing/src/scenarios/multi_node/connection_discovery.md diff --git a/node/testing/src/scenarios/multi_node/connection_discovery.rs b/tools/testing/src/scenarios/multi_node/connection_discovery.rs similarity index 100% rename from node/testing/src/scenarios/multi_node/connection_discovery.rs rename to tools/testing/src/scenarios/multi_node/connection_discovery.rs diff --git a/node/testing/src/scenarios/multi_node/mod.rs b/tools/testing/src/scenarios/multi_node/mod.rs similarity index 100% rename from node/testing/src/scenarios/multi_node/mod.rs rename to tools/testing/src/scenarios/multi_node/mod.rs diff --git a/node/testing/src/scenarios/multi_node/pubsub_advanced.rs b/tools/testing/src/scenarios/multi_node/pubsub_advanced.rs similarity index 100% rename from node/testing/src/scenarios/multi_node/pubsub_advanced.rs rename to tools/testing/src/scenarios/multi_node/pubsub_advanced.rs diff --git a/node/testing/src/scenarios/multi_node/sync_4_block_producers.rs b/tools/testing/src/scenarios/multi_node/sync_4_block_producers.rs similarity index 100% rename from node/testing/src/scenarios/multi_node/sync_4_block_producers.rs rename to tools/testing/src/scenarios/multi_node/sync_4_block_producers.rs diff --git a/node/testing/src/scenarios/multi_node/vrf_correct_ledgers.rs b/tools/testing/src/scenarios/multi_node/vrf_correct_ledgers.rs similarity index 100% rename from node/testing/src/scenarios/multi_node/vrf_correct_ledgers.rs rename to tools/testing/src/scenarios/multi_node/vrf_correct_ledgers.rs diff --git a/node/testing/src/scenarios/multi_node/vrf_correct_slots.rs b/tools/testing/src/scenarios/multi_node/vrf_correct_slots.rs similarity index 100% rename from node/testing/src/scenarios/multi_node/vrf_correct_slots.rs rename to tools/testing/src/scenarios/multi_node/vrf_correct_slots.rs diff --git a/node/testing/src/scenarios/multi_node/vrf_epoch_bounds_correct_ledgers.rs b/tools/testing/src/scenarios/multi_node/vrf_epoch_bounds_correct_ledgers.rs similarity index 100% rename from node/testing/src/scenarios/multi_node/vrf_epoch_bounds_correct_ledgers.rs rename to tools/testing/src/scenarios/multi_node/vrf_epoch_bounds_correct_ledgers.rs diff --git a/node/testing/src/scenarios/multi_node/vrf_epoch_bounds_evaluation.rs b/tools/testing/src/scenarios/multi_node/vrf_epoch_bounds_evaluation.rs similarity index 100% rename from node/testing/src/scenarios/multi_node/vrf_epoch_bounds_evaluation.rs rename to tools/testing/src/scenarios/multi_node/vrf_epoch_bounds_evaluation.rs diff --git a/node/testing/src/scenarios/p2p/basic_connection_handling.rs b/tools/testing/src/scenarios/p2p/basic_connection_handling.rs similarity index 100% rename from node/testing/src/scenarios/p2p/basic_connection_handling.rs rename to tools/testing/src/scenarios/p2p/basic_connection_handling.rs diff --git a/node/testing/src/scenarios/p2p/basic_incoming_connections.rs b/tools/testing/src/scenarios/p2p/basic_incoming_connections.rs similarity index 100% rename from node/testing/src/scenarios/p2p/basic_incoming_connections.rs rename to tools/testing/src/scenarios/p2p/basic_incoming_connections.rs diff --git a/node/testing/src/scenarios/p2p/basic_outgoing_connections.rs b/tools/testing/src/scenarios/p2p/basic_outgoing_connections.rs similarity index 100% rename from node/testing/src/scenarios/p2p/basic_outgoing_connections.rs rename to tools/testing/src/scenarios/p2p/basic_outgoing_connections.rs diff --git a/node/testing/src/scenarios/p2p/kademlia.rs b/tools/testing/src/scenarios/p2p/kademlia.rs similarity index 100% rename from node/testing/src/scenarios/p2p/kademlia.rs rename to tools/testing/src/scenarios/p2p/kademlia.rs diff --git a/node/testing/src/scenarios/p2p/mod.rs b/tools/testing/src/scenarios/p2p/mod.rs similarity index 100% rename from node/testing/src/scenarios/p2p/mod.rs rename to tools/testing/src/scenarios/p2p/mod.rs diff --git a/node/testing/src/scenarios/p2p/pubsub.rs b/tools/testing/src/scenarios/p2p/pubsub.rs similarity index 100% rename from node/testing/src/scenarios/p2p/pubsub.rs rename to tools/testing/src/scenarios/p2p/pubsub.rs diff --git a/node/testing/src/scenarios/p2p/signaling.rs b/tools/testing/src/scenarios/p2p/signaling.rs similarity index 100% rename from node/testing/src/scenarios/p2p/signaling.rs rename to tools/testing/src/scenarios/p2p/signaling.rs diff --git a/node/testing/src/scenarios/record_replay/block_production.rs b/tools/testing/src/scenarios/record_replay/block_production.rs similarity index 100% rename from node/testing/src/scenarios/record_replay/block_production.rs rename to tools/testing/src/scenarios/record_replay/block_production.rs diff --git a/node/testing/src/scenarios/record_replay/bootstrap.rs b/tools/testing/src/scenarios/record_replay/bootstrap.rs similarity index 100% rename from node/testing/src/scenarios/record_replay/bootstrap.rs rename to tools/testing/src/scenarios/record_replay/bootstrap.rs diff --git a/node/testing/src/scenarios/record_replay/mod.rs b/tools/testing/src/scenarios/record_replay/mod.rs similarity index 100% rename from node/testing/src/scenarios/record_replay/mod.rs rename to tools/testing/src/scenarios/record_replay/mod.rs diff --git a/node/testing/src/scenarios/simulation/mod.rs b/tools/testing/src/scenarios/simulation/mod.rs similarity index 100% rename from node/testing/src/scenarios/simulation/mod.rs rename to tools/testing/src/scenarios/simulation/mod.rs diff --git a/node/testing/src/scenarios/simulation/small.rs b/tools/testing/src/scenarios/simulation/small.rs similarity index 100% rename from node/testing/src/scenarios/simulation/small.rs rename to tools/testing/src/scenarios/simulation/small.rs diff --git a/node/testing/src/scenarios/simulation/small_forever_real_time.rs b/tools/testing/src/scenarios/simulation/small_forever_real_time.rs similarity index 100% rename from node/testing/src/scenarios/simulation/small_forever_real_time.rs rename to tools/testing/src/scenarios/simulation/small_forever_real_time.rs diff --git a/node/testing/src/scenarios/solo_node/basic_connectivity_accept_incoming.rs b/tools/testing/src/scenarios/solo_node/basic_connectivity_accept_incoming.rs similarity index 100% rename from node/testing/src/scenarios/solo_node/basic_connectivity_accept_incoming.rs rename to tools/testing/src/scenarios/solo_node/basic_connectivity_accept_incoming.rs diff --git a/node/testing/src/scenarios/solo_node/basic_connectivity_initial_joining.rs b/tools/testing/src/scenarios/solo_node/basic_connectivity_initial_joining.rs similarity index 100% rename from node/testing/src/scenarios/solo_node/basic_connectivity_initial_joining.rs rename to tools/testing/src/scenarios/solo_node/basic_connectivity_initial_joining.rs diff --git a/node/testing/src/scenarios/solo_node/bootstrap.rs b/tools/testing/src/scenarios/solo_node/bootstrap.rs similarity index 100% rename from node/testing/src/scenarios/solo_node/bootstrap.rs rename to tools/testing/src/scenarios/solo_node/bootstrap.rs diff --git a/node/testing/src/scenarios/solo_node/mod.rs b/tools/testing/src/scenarios/solo_node/mod.rs similarity index 100% rename from node/testing/src/scenarios/solo_node/mod.rs rename to tools/testing/src/scenarios/solo_node/mod.rs diff --git a/node/testing/src/scenarios/solo_node/sync_to_genesis.rs b/tools/testing/src/scenarios/solo_node/sync_to_genesis.rs similarity index 100% rename from node/testing/src/scenarios/solo_node/sync_to_genesis.rs rename to tools/testing/src/scenarios/solo_node/sync_to_genesis.rs diff --git a/node/testing/src/scenarios/solo_node/sync_to_genesis_custom.rs b/tools/testing/src/scenarios/solo_node/sync_to_genesis_custom.rs similarity index 100% rename from node/testing/src/scenarios/solo_node/sync_to_genesis_custom.rs rename to tools/testing/src/scenarios/solo_node/sync_to_genesis_custom.rs diff --git a/node/testing/src/server/mod.rs b/tools/testing/src/server/mod.rs similarity index 100% rename from node/testing/src/server/mod.rs rename to tools/testing/src/server/mod.rs diff --git a/node/testing/src/server/simulator.rs b/tools/testing/src/server/simulator.rs similarity index 100% rename from node/testing/src/server/simulator.rs rename to tools/testing/src/server/simulator.rs diff --git a/node/testing/src/server/webnode.rs b/tools/testing/src/server/webnode.rs similarity index 100% rename from node/testing/src/server/webnode.rs rename to tools/testing/src/server/webnode.rs diff --git a/node/testing/src/service/mod.rs b/tools/testing/src/service/mod.rs similarity index 100% rename from node/testing/src/service/mod.rs rename to tools/testing/src/service/mod.rs diff --git a/node/testing/src/service/rpc_service.rs b/tools/testing/src/service/rpc_service.rs similarity index 100% rename from node/testing/src/service/rpc_service.rs rename to tools/testing/src/service/rpc_service.rs diff --git a/node/testing/src/simulator/config.rs b/tools/testing/src/simulator/config.rs similarity index 100% rename from node/testing/src/simulator/config.rs rename to tools/testing/src/simulator/config.rs diff --git a/node/testing/src/simulator/mod.rs b/tools/testing/src/simulator/mod.rs similarity index 100% rename from node/testing/src/simulator/mod.rs rename to tools/testing/src/simulator/mod.rs diff --git a/node/testing/tests/common.rs b/tools/testing/tests/common.rs similarity index 100% rename from node/testing/tests/common.rs rename to tools/testing/tests/common.rs diff --git a/node/testing/tests/connection_discovery_ocaml_to_rust.rs b/tools/testing/tests/connection_discovery_ocaml_to_rust.rs similarity index 100% rename from node/testing/tests/connection_discovery_ocaml_to_rust.rs rename to tools/testing/tests/connection_discovery_ocaml_to_rust.rs diff --git a/node/testing/tests/connection_discovery_ocaml_to_rust_via_seed.rs b/tools/testing/tests/connection_discovery_ocaml_to_rust_via_seed.rs similarity index 100% rename from node/testing/tests/connection_discovery_ocaml_to_rust_via_seed.rs rename to tools/testing/tests/connection_discovery_ocaml_to_rust_via_seed.rs diff --git a/node/testing/tests/connection_discovery_rust_as_seed.rs b/tools/testing/tests/connection_discovery_rust_as_seed.rs similarity index 100% rename from node/testing/tests/connection_discovery_rust_as_seed.rs rename to tools/testing/tests/connection_discovery_rust_as_seed.rs diff --git a/node/testing/tests/connection_discovery_rust_to_ocaml.rs b/tools/testing/tests/connection_discovery_rust_to_ocaml.rs similarity index 100% rename from node/testing/tests/connection_discovery_rust_to_ocaml.rs rename to tools/testing/tests/connection_discovery_rust_to_ocaml.rs diff --git a/node/testing/tests/connection_discovery_rust_to_ocaml_via_seed.rs b/tools/testing/tests/connection_discovery_rust_to_ocaml_via_seed.rs similarity index 100% rename from node/testing/tests/connection_discovery_rust_to_ocaml_via_seed.rs rename to tools/testing/tests/connection_discovery_rust_to_ocaml_via_seed.rs diff --git a/node/testing/tests/multi_node_initial_joining.rs b/tools/testing/tests/multi_node_initial_joining.rs similarity index 100% rename from node/testing/tests/multi_node_initial_joining.rs rename to tools/testing/tests/multi_node_initial_joining.rs diff --git a/node/testing/tests/multi_node_peer_discovery.rs b/tools/testing/tests/multi_node_peer_discovery.rs similarity index 100% rename from node/testing/tests/multi_node_peer_discovery.rs rename to tools/testing/tests/multi_node_peer_discovery.rs diff --git a/node/testing/tests/multi_node_propagate_block.rs b/tools/testing/tests/multi_node_propagate_block.rs similarity index 100% rename from node/testing/tests/multi_node_propagate_block.rs rename to tools/testing/tests/multi_node_propagate_block.rs diff --git a/node/testing/tests/node_libp2p_only.rs b/tools/testing/tests/node_libp2p_only.rs similarity index 100% rename from node/testing/tests/node_libp2p_only.rs rename to tools/testing/tests/node_libp2p_only.rs diff --git a/node/testing/tests/node_libp2p_with_rust_to_rust_webrtc.rs b/tools/testing/tests/node_libp2p_with_rust_to_rust_webrtc.rs similarity index 100% rename from node/testing/tests/node_libp2p_with_rust_to_rust_webrtc.rs rename to tools/testing/tests/node_libp2p_with_rust_to_rust_webrtc.rs diff --git a/node/testing/tests/p2p_basic_connections.rs b/tools/testing/tests/p2p_basic_connections.rs similarity index 100% rename from node/testing/tests/p2p_basic_connections.rs rename to tools/testing/tests/p2p_basic_connections.rs diff --git a/node/testing/tests/p2p_basic_incoming.rs b/tools/testing/tests/p2p_basic_incoming.rs similarity index 100% rename from node/testing/tests/p2p_basic_incoming.rs rename to tools/testing/tests/p2p_basic_incoming.rs diff --git a/node/testing/tests/p2p_basic_outgoing.rs b/tools/testing/tests/p2p_basic_outgoing.rs similarity index 100% rename from node/testing/tests/p2p_basic_outgoing.rs rename to tools/testing/tests/p2p_basic_outgoing.rs diff --git a/node/testing/tests/p2p_kad.rs b/tools/testing/tests/p2p_kad.rs similarity index 100% rename from node/testing/tests/p2p_kad.rs rename to tools/testing/tests/p2p_kad.rs diff --git a/node/testing/tests/p2p_pubsub.rs b/tools/testing/tests/p2p_pubsub.rs similarity index 100% rename from node/testing/tests/p2p_pubsub.rs rename to tools/testing/tests/p2p_pubsub.rs diff --git a/node/testing/tests/p2p_signaling.rs b/tools/testing/tests/p2p_signaling.rs similarity index 100% rename from node/testing/tests/p2p_signaling.rs rename to tools/testing/tests/p2p_signaling.rs diff --git a/node/testing/tests/record_replay_record_replay_block_production.rs b/tools/testing/tests/record_replay_record_replay_block_production.rs similarity index 100% rename from node/testing/tests/record_replay_record_replay_block_production.rs rename to tools/testing/tests/record_replay_record_replay_block_production.rs diff --git a/node/testing/tests/record_replay_record_replay_bootstrap.rs b/tools/testing/tests/record_replay_record_replay_bootstrap.rs similarity index 100% rename from node/testing/tests/record_replay_record_replay_bootstrap.rs rename to tools/testing/tests/record_replay_record_replay_bootstrap.rs diff --git a/node/testing/tests/single_node_accept_incoming.rs b/tools/testing/tests/single_node_accept_incoming.rs similarity index 100% rename from node/testing/tests/single_node_accept_incoming.rs rename to tools/testing/tests/single_node_accept_incoming.rs diff --git a/node/testing/tests/single_node_bootstrap_from_replayer.rs b/tools/testing/tests/single_node_bootstrap_from_replayer.rs similarity index 100% rename from node/testing/tests/single_node_bootstrap_from_replayer.rs rename to tools/testing/tests/single_node_bootstrap_from_replayer.rs diff --git a/node/testing/tests/single_node_initial_joining.rs b/tools/testing/tests/single_node_initial_joining.rs similarity index 100% rename from node/testing/tests/single_node_initial_joining.rs rename to tools/testing/tests/single_node_initial_joining.rs diff --git a/website/docs/developers/scripts/update-ocaml-node.sh b/website/docs/developers/scripts/update-ocaml-node.sh index 48b41e4c8f..c6d59d2c41 100755 --- a/website/docs/developers/scripts/update-ocaml-node.sh +++ b/website/docs/developers/scripts/update-ocaml-node.sh @@ -35,10 +35,10 @@ echo "Updating config_${old_hash} to config_${new_hash}" # Check if config_${old_hash} pattern exists in the files config_files=( - "${base_dir}/node/testing/src/node/ocaml/config.rs" - "${base_dir}/node/testing/src/node/ocaml/mod.rs" - "${base_dir}/node/testing/src/scenarios/multi_node/basic_connectivity_peer_discovery.rs" - "${base_dir}/node/testing/src/scenarios/solo_node/basic_connectivity_accept_incoming.rs" + "${base_dir}/tools/testing/src/node/ocaml/config.rs" + "${base_dir}/tools/testing/src/node/ocaml/mod.rs" + "${base_dir}/tools/testing/src/scenarios/multi_node/basic_connectivity_peer_discovery.rs" + "${base_dir}/tools/testing/src/scenarios/solo_node/basic_connectivity_accept_incoming.rs" ) config_pattern_found=false @@ -63,7 +63,7 @@ version_files=( "${base_dir}/.github/workflows/tests.yaml" "${base_dir}/.github/workflows/test-graphql-compatibility.yml" "${base_dir}/docker-compose.archive.devnet.compare.yml" - "${base_dir}/node/testing/src/node/ocaml/config.rs" + "${base_dir}/tools/testing/src/node/ocaml/config.rs" ) version_pattern_found=false diff --git a/website/docs/developers/testing/network-connectivity.md b/website/docs/developers/testing/network-connectivity.md index 99913a8a79..e0ec67184e 100644 --- a/website/docs/developers/testing/network-connectivity.md +++ b/website/docs/developers/testing/network-connectivity.md @@ -42,7 +42,7 @@ of the public (or private) OCaml testnet. _The source code for this test can be found in this repo:_ -[https://github.com/o1-labs/mina-rust/blob/develop/node/testing/src/scenarios/solo_node/basic_connectivity_initial_joining.rs](https://github.com/o1-labs/mina-rust/blob/develop/node/testing/src/scenarios/solo_node/basic_connectivity_initial_joining.rs) +[https://github.com/o1-labs/mina-rust/blob/develop/tools/testing/src/scenarios/solo_node/basic_connectivity_initial_joining.rs](https://github.com/o1-labs/mina-rust/blob/develop/tools/testing/src/scenarios/solo_node/basic_connectivity_initial_joining.rs) We are testing these scenarios: @@ -181,7 +181,7 @@ under our control. _The source code for this test can be found in this repo:_ -[https://github.com/o1-labs/mina-rust/blob/develop/node/testing/src/scenarios/multi_node/basic_connectivity_initial_joining.rs#L9](https://github.com/o1-labs/mina-rust/blob/develop/node/testing/src/scenarios/multi_node/basic_connectivity_initial_joining.rs#L9) +[https://github.com/o1-labs/mina-rust/blob/develop/tools/testing/src/scenarios/multi_node/basic_connectivity_initial_joining.rs#L9](https://github.com/o1-labs/mina-rust/blob/develop/tools/testing/src/scenarios/multi_node/basic_connectivity_initial_joining.rs#L9) ### How it's tested diff --git a/website/docs/developers/testing/scenario-tests.md b/website/docs/developers/testing/scenario-tests.md index bb726feb47..409a670670 100644 --- a/website/docs/developers/testing/scenario-tests.md +++ b/website/docs/developers/testing/scenario-tests.md @@ -31,7 +31,7 @@ deterministically across different environments. ### mina-node-testing framework -#### Test library (`node/testing/src/`) +#### Test library (`tools/testing/src/`) The `mina-node-testing` library provides the core runtime infrastructure: @@ -44,7 +44,7 @@ The `mina-node-testing` library provides the core runtime infrastructure: - **Recording/replay**: Captures and reproduces test scenarios with complete fidelity -#### Test runner (`node/testing/src/bin/runner.rs`) +#### Test runner (`tools/testing/src/bin/runner.rs`) The test runner provides comprehensive scenario management: @@ -395,18 +395,18 @@ isolation. ### Workflow Requirements - **scenarios-run**: Expects pre-existing scenario files in - `node/testing/res/scenarios/` + `tools/testing/res/scenarios/` - **scenarios-generate**: - Default (`--output=stdout`): Runs scenarios and outputs to stdout, no JSON files created - With `--output=json`: Runs scenarios and saves them as JSON files in - `node/testing/res/scenarios/` + `tools/testing/res/scenarios/` #### Understanding Scenario Load/Save Implementation For detailed technical information about how scenarios are loaded and saved, see the -[scenario module source code](https://github.com/o1-labs/mina-rust/blob/develop/node/testing/src/scenario/mod.rs). +[scenario module source code](https://github.com/o1-labs/mina-rust/blob/develop/tools/testing/src/scenario/mod.rs). ### Scenario generation and replay diff --git a/website/docs/node-operators/testing/overview.md b/website/docs/node-operators/testing/overview.md index e14bb90389..f3aa4a7d35 100644 --- a/website/docs/node-operators/testing/overview.md +++ b/website/docs/node-operators/testing/overview.md @@ -66,7 +66,7 @@ ## Scenarios -### [Connection Discovery](https://github.com/o1-labs/mina-rust/blob/develop/node/testing/src/scenarios/multi_node/connection_discovery.rs) +### [Connection Discovery](https://github.com/o1-labs/mina-rust/blob/develop/tools/testing/src/scenarios/multi_node/connection_discovery.rs) We want to test whether the Rust node can connect and discover peers from Ocaml node, and vice versa @@ -104,7 +104,7 @@ node, and vice versa these nodes connect to the Rust node, the test makes sure that they also have each other’s addresses as their peers. -### [P2P Connections](https://github.com/o1-labs/mina-rust/blob/develop/node/testing/tests/p2p_basic_connections.rs) +### [P2P Connections](https://github.com/o1-labs/mina-rust/blob/develop/tools/testing/tests/p2p_basic_connections.rs) - `SimultaneousConnections`: Tests if two nodes are connecting to each other at the same time, they should be connected, so each one has exactly one @@ -123,20 +123,20 @@ node, and vice versa - `MaxNumberOfPeersIs1` Two nodes with max peers = 1 can connect to each other. -### [P2P Kademlia](https://github.com/o1-labs/mina-rust/blob/develop/node/testing/tests/p2p_kad.rs) +### [P2P Kademlia](https://github.com/o1-labs/mina-rust/blob/develop/tools/testing/tests/p2p_kad.rs) Test related to kademlia layer. - `KademliaBootstrap`: Test that node discovers peers another rust node and is able to bootstrap -### [P2P Pubsub](https://github.com/o1-labs/mina-rust/blob/develop/node/testing/tests/p2p_pubsub.rs) +### [P2P Pubsub](https://github.com/o1-labs/mina-rust/blob/develop/tools/testing/tests/p2p_pubsub.rs) Tests related to pubsub layer. - `P2pReceiveMessage` Test that node receives message over meshsub from node -### [P2P Incoming](https://github.com/o1-labs/mina-rust/blob/develop/node/testing/tests/p2p_basic_incoming.rs) +### [P2P Incoming](https://github.com/o1-labs/mina-rust/blob/develop/tools/testing/tests/p2p_basic_incoming.rs) Tests related to handling incoming connections. @@ -144,7 +144,7 @@ Tests related to handling incoming connections. - `AcceptMultipleIncomingConnections`: Node should accept multiple incoming connections. -### [P2P Outgoing](https://github.com/o1-labs/mina-rust/blob/develop/node/testing/tests/p2p_basic_outgoing.rs) +### [P2P Outgoing](https://github.com/o1-labs/mina-rust/blob/develop/tools/testing/tests/p2p_basic_outgoing.rs) Tests related to outgoing connections @@ -171,7 +171,7 @@ Tests related to outgoing connections - `ConnectToInitialPeersBecomeReady`: Node should be able to connect to all initial peers after they become ready. -### [Single Node](https://github.com/o1-labs/mina-rust/blob/develop/node/testing/tests/single_node_accept_incoming.rs): +### [Single Node](https://github.com/o1-labs/mina-rust/blob/develop/tools/testing/tests/single_node_accept_incoming.rs): We want to test whether the Rust node is compatible with the OCaml node. We achieve this by attempting to connect the Mina Rust node to the existing OCaml @@ -195,7 +195,7 @@ cluster. - `SoloNodeBootstrap`: Set up single Rust node and bootstrap snarked ledger, bootstrap ledger and blocks. -### [Multi Node](https://github.com/o1-labs/mina-rust/blob/develop/node/testing/tests/multi_node.rs): +### [Multi Node](https://github.com/o1-labs/mina-rust/blob/develop/tools/testing/tests/multi_node.rs): We also want to test a scenario in which the network consists only of Mina Rust nodes. If the Mina Rust node is using a functionality that is implemented only @@ -210,7 +210,7 @@ the testing is completely local and under our control. - `MultiNodeBasicConnectivityInitialJoining`: Tests that node maintains number of peers between minimum and maximum allowed peers. -### [Record/Replay Bootstrap](https://github.com/o1-labs/mina-rust/blob/develop/node/testing/tests/record_replay_record_replay_bootstrap.rs) +### [Record/Replay Bootstrap](https://github.com/o1-labs/mina-rust/blob/develop/tools/testing/tests/record_replay_record_replay_bootstrap.rs) - `RecordReplayBootstrap`: Bootstrap a rust node while recorder of state and input actions is enabled and make sure we can successfully replay it.