Files
clash-proxy/crates/tauri-plugin-mihomo/tests/common/mod.rs
2025-10-01 09:28:40 +08:00

44 lines
1.4 KiB
Rust

use std::sync::Arc;
use tauri_plugin_mihomo::{Mihomo, models::Protocol};
#[allow(dead_code)]
pub const TEST_URL: &str = "http://www.gstatic.com/generate_204";
#[allow(dead_code)]
pub const TIMEOUT: u32 = 3000;
pub fn mihomo() -> Mihomo {
dotenvy::dotenv().unwrap();
let mihomo_socket = std::env::var("MIHOMO_SOCKET").unwrap_or(String::from("0"));
if mihomo_socket == "1" {
println!("connect to mihomo by local socket");
// use local socket
let socket_path = if cfg!(unix) {
"/tmp/verge-mihomo.sock".to_string()
// "/tmp/clash-rs.sock".to_string()
} else {
r"\\.\pipe\verge-mihomo".to_string()
// r"\\.\pipe\clash-rs".to_string()
};
Mihomo {
protocol: Protocol::LocalSocket,
external_host: None,
external_port: None,
secret: None,
socket_path: Some(socket_path),
connection_manager: Arc::new(Default::default()),
}
} else {
println!("connect to mihomo by http");
// use http
Mihomo {
protocol: Protocol::Http,
external_host: Some("127.0.0.1".into()),
external_port: Some(9090),
secret: Some("yPMJk9i7UaR1hv3-2BkPy".into()),
socket_path: None,
connection_manager: Arc::new(Default::default()),
}
}
}