summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorSebastian Holmin <sebastian.holmin@mullvad.net>2025-02-19 09:18:49 +0100
committerSebastian Holmin <sebastian.holmin@mullvad.net>2025-02-24 14:54:00 +0100
commit0eb8125ab062871a383c68db6b132a2c23e8cb06 (patch)
treee2379f9876cc8450647d6a2b0681a507798be3bb
parent4dd8c35fa54f1cce75b713daea4536245798a7ba (diff)
downloadmullvadvpn-0eb8125ab062871a383c68db6b132a2c23e8cb06.tar.xz
mullvadvpn-0eb8125ab062871a383c68db6b132a2c23e8cb06.zip
Fix `apply_settings_from_query` overwriting settings
-rw-r--r--test/test-manager/src/tests/helpers.rs12
-rw-r--r--test/test-manager/src/tests/mod.rs1
2 files changed, 11 insertions, 2 deletions
diff --git a/test/test-manager/src/tests/helpers.rs b/test/test-manager/src/tests/helpers.rs
index 195c3da26a..dd8ba1bfeb 100644
--- a/test/test-manager/src/tests/helpers.rs
+++ b/test/test-manager/src/tests/helpers.rs
@@ -596,11 +596,21 @@ impl<T> Drop for AbortOnDrop<T> {
}
}
+/// Applies the given query to the daemon location selection. The query will be intersected with
+/// the current location settings, so that the default location custom list is still used.
pub async fn apply_settings_from_relay_query(
mullvad_client: &mut MullvadProxyClient,
query: RelayQuery,
) -> Result<(), Error> {
- let (constraints, bridge_state, bridge_settings, obfuscation) = query.into_settings();
+ let intersected_relay_query = intersect_with_current_settings(mullvad_client, query)
+ .await
+ .map_err(|error| {
+ Error::Other(format!(
+ "Failed to join query with current daemon settings: {error}"
+ ))
+ })?;
+ let (constraints, bridge_state, bridge_settings, obfuscation) =
+ intersected_relay_query.into_settings();
mullvad_client
.set_relay_settings(constraints.into())
diff --git a/test/test-manager/src/tests/mod.rs b/test/test-manager/src/tests/mod.rs
index 4f5362167f..d10a080803 100644
--- a/test/test-manager/src/tests/mod.rs
+++ b/test/test-manager/src/tests/mod.rs
@@ -72,7 +72,6 @@ pub enum Error {
#[error("GUI test binary missing")]
MissingGuiTest,
- #[cfg(target_os = "macos")]
#[error("An error occurred: {0}")]
Other(String),
}