Skip to main content

Crate mock_igd

Crate mock_igd 

Source
Expand description

§mock-igd

A mock UPnP Internet Gateway Device (IGD) server for testing client implementations.

§Example

use mock_igd::{MockIgdServer, Action, Responder};

#[tokio::test]
async fn test_get_external_ip() {
    let server = MockIgdServer::start().await.unwrap();

    server.mock(
        Action::GetExternalIPAddress,
        Responder::success()
            .with_external_ip("203.0.113.1".parse().unwrap())
    ).await;

    // Use server.url() to connect your IGD client
    let url = server.url();
}

Re-exports§

pub use action::Action;
pub use action::Protocol;
pub use error::Error;
pub use error::Result;
pub use matcher::Matcher;
pub use mock::ReceivedRequest;
pub use mock::ReceivedSsdpRequest;
pub use responder::Responder;
pub use server::MockIgdServer;

Modules§

action
UPnP IGD action types and parsing.
error
Error types for mock-igd.
matcher
Request matching logic.
mock
Mock registration and management.
responder
Response generation for UPnP IGD actions.
server
Mock IGD server implementation.