summaryrefslogtreecommitdiffhomepage
path: root/test/test-manager
diff options
context:
space:
mode:
authorDavid Lönnhager <david.l@mullvad.net>2024-02-07 17:50:24 +0100
committerDavid Lönnhager <david.l@mullvad.net>2024-02-07 17:50:24 +0100
commit0d4ee241b523a7d024cb2aebfcbbf3924a8f3bb5 (patch)
treec095e7b898d4d736322d267965948b30fde3bf50 /test/test-manager
parent20d9c98f5ec44166b461730fec9ca292b622265f (diff)
parenteed7234599253f3d742be8bb4b6b1ecbf1299dc3 (diff)
downloadmullvadvpn-0d4ee241b523a7d024cb2aebfcbbf3924a8f3bb5.tar.xz
mullvadvpn-0d4ee241b523a7d024cb2aebfcbbf3924a8f3bb5.zip
Merge branch 'testing-add-socks-server'
Diffstat (limited to 'test/test-manager')
-rw-r--r--test/test-manager/Cargo.toml1
-rw-r--r--test/test-manager/src/main.rs9
-rw-r--r--test/test-manager/src/vm/network/mod.rs3
3 files changed, 13 insertions, 0 deletions
diff --git a/test/test-manager/Cargo.toml b/test/test-manager/Cargo.toml
index 53c1c355f1..72230a2edd 100644
--- a/test/test-manager/Cargo.toml
+++ b/test/test-manager/Cargo.toml
@@ -42,6 +42,7 @@ pcap = { version = "0.10.1", features = ["capture-stream"] }
pnet_packet = "0.31.0"
test-rpc = { path = "../test-rpc" }
+socks-server = { path = "../socks-server" }
env_logger = { workspace = true }
diff --git a/test/test-manager/src/main.rs b/test/test-manager/src/main.rs
index f5e7a70d9f..f81bf77594 100644
--- a/test/test-manager/src/main.rs
+++ b/test/test-manager/src/main.rs
@@ -14,6 +14,7 @@ use std::path::PathBuf;
use anyhow::Context;
use anyhow::Result;
use clap::Parser;
+use std::net::SocketAddr;
use tests::config::DEFAULT_MULLVAD_HOST;
/// Test manager for Mullvad VPN app
@@ -248,6 +249,13 @@ async fn main() -> Result<()> {
.await
.context("Failed to run provisioning for VM")?;
+ // For convenience, spawn a SOCKS5 server that is reachable for tests that need it
+ let socks = socks_server::spawn(SocketAddr::new(
+ crate::vm::network::NON_TUN_GATEWAY.into(),
+ crate::vm::network::SOCKS5_PORT,
+ ))
+ .await?;
+
let skip_wait = vm_config.provisioner != config::Provisioner::Noop;
let result = run_tests::run(
@@ -291,6 +299,7 @@ async fn main() -> Result<()> {
if display {
instance.wait().await;
}
+ socks.close();
result
}
Commands::FormatTestReports { reports } => {
diff --git a/test/test-manager/src/vm/network/mod.rs b/test/test-manager/src/vm/network/mod.rs
index e12a95c713..944e241013 100644
--- a/test/test-manager/src/vm/network/mod.rs
+++ b/test/test-manager/src/vm/network/mod.rs
@@ -15,3 +15,6 @@ pub use platform::{
CUSTOM_TUN_REMOTE_REAL_PORT, CUSTOM_TUN_REMOTE_TUN_ADDR, DUMMY_LAN_INTERFACE_IP,
NON_TUN_GATEWAY,
};
+
+/// Port on NON_TUN_GATEWAY that hosts a SOCKS5 server
+pub const SOCKS5_PORT: u16 = 54321;