summaryrefslogtreecommitdiffhomepage
path: root/test/test-manager/src
diff options
context:
space:
mode:
authorMarkus Pettersson <markus.pettersson@mullvad.net>2025-07-12 15:20:32 +0200
committerMarkus Pettersson <markus.pettersson@mullvad.net>2025-08-11 09:01:46 +0200
commitf9ea6d80239ce8bd1cd4758335b8da328dfb2c06 (patch)
treeab75b268bd74e09c29806c785c71ce62a9ed6988 /test/test-manager/src
parent8055589d4876765ec5a61146833a8879928152ff (diff)
downloadmullvadvpn-f9ea6d80239ce8bd1cd4758335b8da328dfb2c06.tar.xz
mullvadvpn-f9ea6d80239ce8bd1cd4758335b8da328dfb2c06.zip
Add e2e test `test_quantum_resistant_multihop_quic_tunnel`
Diffstat (limited to 'test/test-manager/src')
-rw-r--r--test/test-manager/src/tests/tunnel.rs36
1 files changed, 36 insertions, 0 deletions
diff --git a/test/test-manager/src/tests/tunnel.rs b/test/test-manager/src/tests/tunnel.rs
index 4f5d1d7cbb..5e7e1eb383 100644
--- a/test/test-manager/src/tests/tunnel.rs
+++ b/test/test-manager/src/tests/tunnel.rs
@@ -581,6 +581,42 @@ pub async fn test_quantum_resistant_multihop_shadowsocks_tunnel(
Ok(())
}
+/// Test QUIC, PQ, and WireGuard combined.
+///
+/// # Limitations
+///
+/// This is not testing any of the individual components, just whether the daemon can connect when
+/// all of these features are combined.
+#[test_function]
+pub async fn test_quantum_resistant_multihop_quic_tunnel(
+ _: TestContext,
+ rpc: ServiceClient,
+ mut mullvad_client: MullvadProxyClient,
+) -> anyhow::Result<()> {
+ mullvad_client
+ // TODO: Why is this needed, exactly?
+ .set_quantum_resistant_tunnel(wireguard::QuantumResistantState::On)
+ .await
+ .context("Failed to enable PQ tunnels")?;
+
+ let query = RelayQueryBuilder::wireguard()
+ .quantum_resistant()
+ .multihop()
+ .quic()
+ .build();
+
+ apply_settings_from_relay_query(&mut mullvad_client, query).await?;
+
+ connect_and_wait(&mut mullvad_client).await?;
+
+ assert!(
+ helpers::using_mullvad_exit(&rpc).await,
+ "Expected Mullvad exit IP"
+ );
+
+ Ok(())
+}
+
/// Try to connect to an OpenVPN relay via a remote, passwordless SOCKS5 server.
/// * No outgoing traffic to the bridge/entry relay is observed from the SUT.
/// * The conncheck reports an unexpected exit relay.