summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorOskar Nyberg <oskar@mullvad.net>2024-04-16 09:39:23 +0200
committerOskar Nyberg <oskar@mullvad.net>2024-04-19 11:35:01 +0200
commit67e772a453c4df480f03e82fb75e44ced89f7679 (patch)
tree67edf8797c6e147b4dd8368c4e2410b800ac64d5
parenta45790318396d5f8b73a55c82d512868968fbe4b (diff)
downloadmullvadvpn-67e772a453c4df480f03e82fb75e44ced89f7679.tar.xz
mullvadvpn-67e772a453c4df480f03e82fb75e44ced89f7679.zip
Add ensure_logged_in test helper function
-rw-r--r--test/test-manager/src/tests/helpers.rs15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/test-manager/src/tests/helpers.rs b/test/test-manager/src/tests/helpers.rs
index da50679a26..b733939da0 100644
--- a/test/test-manager/src/tests/helpers.rs
+++ b/test/test-manager/src/tests/helpers.rs
@@ -249,6 +249,21 @@ pub async fn login_with_retries(
}
}
+/// Ensure that the test runner is logged in to an account.
+///
+/// This will first check whether we are logged in. If not, it will also try to login
+/// on your behalf. If this function returns without any errors, we are logged in to a valid
+/// account.
+pub async fn ensure_logged_in(
+ mullvad_client: &mut MullvadProxyClient,
+) -> Result<(), mullvad_management_interface::Error> {
+ if mullvad_client.get_device().await?.is_logged_in() {
+ return Ok(());
+ }
+ // We are apparently not logged in already.. Try to log in.
+ login_with_retries(mullvad_client).await
+}
+
/// Try to connect to a Mullvad Tunnel.
///
/// # Returns