use crate::tcp_relay_client::client_config::ClientConfig; use crate::test::{BAD_PATH, get_port_number, LOCALHOST_IP, PortsAllocation}; use crate::test::pki::Pki; use crate::test::test_files_utils::create_temp_file_with_random_content; const VALID_TOKEN: &str = "AvalidTOKEN"; fn port(index: u16) -> u16 { get_port_number(PortsAllocation::TestsWithoutPortOpened, index) } #[tokio::test()] async fn invalid_file_type() { let _ = env_logger::builder().is_test(true).try_init(); let pki = Pki::load(); crate::tcp_relay_client::run_app(ClientConfig { token: Some(VALID_TOKEN.to_string()), relay_url: format!("https://{}:{}", LOCALHOST_IP, port(0)), listen_address: LOCALHOST_IP.to_string(), root_certificate: Some(pki.expired_client_key.file_path()), ..Default::default() }) .await .unwrap_err(); } #[tokio::test()] async fn non_existing_file() { let _ = env_logger::builder().is_test(true).try_init(); crate::tcp_relay_client::run_app(ClientConfig { token: Some(VALID_TOKEN.to_string()), relay_url: format!("https://{}:{}", LOCALHOST_IP, port(0)), listen_address: LOCALHOST_IP.to_string(), root_certificate: Some(BAD_PATH.to_string()), ..Default::default() }) .await .unwrap_err(); } #[tokio::test()] async fn random_file() { let _ = env_logger::builder().is_test(true).try_init(); let random_file = create_temp_file_with_random_content(); crate::tcp_relay_client::run_app(ClientConfig { token: Some(VALID_TOKEN.to_string()), relay_url: format!("https://{}:{}", LOCALHOST_IP, port(0)), listen_address: LOCALHOST_IP.to_string(), root_certificate: Some(random_file.to_string_lossy().to_string()), ..Default::default() }) .await .unwrap_err(); }