28 lines
990 B
Rust
28 lines
990 B
Rust
#[cfg(target_os = "linux")]
|
|
#[tokio::test]
|
|
async fn test_native_linux_live_discovery() {
|
|
use nx9_wireguard::NativeLinuxWireGuardEngine;
|
|
use nx9_wireguard::WireGuardEngine;
|
|
|
|
let engine = NativeLinuxWireGuardEngine::new();
|
|
let ifaces = engine.list_interfaces().await.unwrap();
|
|
println!("Discovered WireGuard interfaces: {:?}", ifaces);
|
|
|
|
// Ensure list_interfaces returns a valid list
|
|
for iface in &ifaces {
|
|
match engine.get_interface_stats(iface).await {
|
|
Ok(Some(stats)) => {
|
|
println!(
|
|
"Interface {iface} live stats: public_key={:?}, port={}, peers={}, up={}",
|
|
stats.public_key,
|
|
stats.listen_port,
|
|
stats.peers.len(),
|
|
stats.is_up
|
|
);
|
|
}
|
|
Ok(None) => println!("Interface {iface} returned None"),
|
|
Err(e) => println!("Interface {iface} query returned error: {e}"),
|
|
}
|
|
}
|
|
}
|