Crate freenet_test_network

Crate freenet_test_network 

Source
Expand description

Reliable test network infrastructure for Freenet

This crate provides tools for spinning up and managing local Freenet test networks for integration testing.

Re-exports§

pub use docker::DockerNatBackend;
pub use docker::DockerNatConfig;
pub use docker::DockerPeerInfo;
pub use docker::NatTopology;
pub use docker::NatType;

Modules§

docker
Docker-based NAT simulation backend for testing Freenet in isolated networks.

Structs§

ContractKey
A complete key specification, that represents a cryptographic hash that identifies the contract.
LogEntry
A log entry from a peer with timestamp
NetworkBuilder
Builder for configuring and creating a test network
NetworkDiagnosticsSnapshot
Snapshot describing diagnostics collected across the network at a moment in time.
NetworkTopology
Network topology information
PeerContractStatus
Contract-specific status for a peer when a contract key is provided.
PeerDiagnosticsSnapshot
Diagnostic information for a single peer.
RemoteMachine
Configuration for a remote Linux machine accessible via SSH
RingPeerSnapshot
Snapshot describing a peer’s ring metadata and adjacency.
RingVizMetrics
Aggregated metrics that help reason about small-world properties.
TestNetwork
A test network consisting of gateways and peer nodes
TestPeer
Represents a single peer in the test network

Enums§

Backend
Backend for running the test network
BuildProfile
Build profile for compiling freenet
Error
Errors that can occur when managing test networks
FreenetBinary
Specifies which freenet binary to use for the test network
PeerLocation
Specifies where a peer should be spawned

Functions§

ring_nodes_from_diagnostics
Convert a diagnostics snapshot into the ring snapshot format used by the visualization.
write_ring_visualization_from_diagnostics
Render a ring visualization from a saved diagnostics snapshot (e.g. a large soak run).

Type Aliases§

Result
Result type used throughout this crate