summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAlbin <albin@mullvad.net>2025-10-27 11:50:31 +0100
committerAlbin <albin@mullvad.net>2025-10-27 11:50:31 +0100
commitb8ff10c6506fa2944220f32e83155e29b23b96e7 (patch)
treefd3d8ca60359f1fb350751a5e21da463347f2092
parenta661d97f8f516476e71c4bc1ed293f33d9cd1c67 (diff)
parent6834fad3f812547b004e9cdc108366a8fbab1e4a (diff)
downloadmullvadvpn-b8ff10c6506fa2944220f32e83155e29b23b96e7.tar.xz
mullvadvpn-b8ff10c6506fa2944220f32e83155e29b23b96e7.zip
Merge branch 'enable-gotatun-by-default-for-android'
-rw-r--r--android/app/build.gradle.kts4
-rw-r--r--android/gradle.properties4
-rw-r--r--android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/ConnectionTest.kt52
3 files changed, 31 insertions, 29 deletions
diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts
index 3e3634c178..c163d78943 100644
--- a/android/app/build.gradle.kts
+++ b/android/app/build.gradle.kts
@@ -254,7 +254,7 @@ cargo {
val isReleaseBuild = isReleaseBuild()
val generateDebugSymbolsForReleaseBuilds =
getBooleanProperty("mullvad.app.build.cargo.generateDebugSymbolsForReleaseBuilds")
- val enableBoringTun = getBooleanProperty("mullvad.app.build.boringtun.enable")
+ val enableGotaTun = getBooleanProperty("mullvad.app.build.gotatun.enable")
val enableApiOverride = !isReleaseBuild || isDevBuild() || isAlphaBuild()
module = repoRootPath
libname = "mullvad-jni"
@@ -275,7 +275,7 @@ cargo {
if (enableApiOverride) {
add("api-override")
}
- if (enableBoringTun) {
+ if (enableGotaTun) {
add("boringtun")
}
}
diff --git a/android/gradle.properties b/android/gradle.properties
index 2f55e4e852..d2a570e837 100644
--- a/android/gradle.properties
+++ b/android/gradle.properties
@@ -41,8 +41,8 @@ mullvad.app.build.keepDebugSymbols=false
# when debugging to the Rust native libs from Android Studio.
mullvad.app.build.replaceRustPathPrefix=true
-# Enable/Disable boringtun
-mullvad.app.build.boringtun.enable=false
+# Enable/Disable GotaTun
+mullvad.app.build.gotatun.enable=true
## E2E tests ##
diff --git a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/ConnectionTest.kt b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/ConnectionTest.kt
index 83b04ee04c..d049525324 100644
--- a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/ConnectionTest.kt
+++ b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/ConnectionTest.kt
@@ -1,6 +1,7 @@
package net.mullvad.mullvadvpn.test.e2e
import kotlin.time.Duration.Companion.milliseconds
+import kotlin.time.Duration.Companion.minutes
import kotlinx.coroutines.delay
import kotlinx.coroutines.test.runTest
import net.mullvad.mullvadvpn.test.common.constant.EXTREMELY_LONG_TIMEOUT
@@ -103,39 +104,40 @@ class ConnectionTest : EndToEndTest() {
@Test
@HasDependencyOnLocalAPI
@ClearFirewallRules
- fun testWireGuardObfuscationAutomatic() = runTest {
- app.launchAndLogIn(accountTestRule.validAccountNumber)
- on<ConnectPage> { enableLocalNetworkSharingStory() }
+ fun testWireGuardObfuscationAutomatic() =
+ runTest(timeout = 2.minutes) {
+ app.launchAndLogIn(accountTestRule.validAccountNumber)
+ on<ConnectPage> { enableLocalNetworkSharingStory() }
- on<ConnectPage> { clickSelectLocation() }
+ on<ConnectPage> { clickSelectLocation() }
- on<SelectLocationPage> {
- clickLocationExpandButton(relayProvider.getDefaultRelay().country)
- clickLocationExpandButton(relayProvider.getDefaultRelay().city)
- clickLocationCell(relayProvider.getDefaultRelay().relay)
- }
+ on<SelectLocationPage> {
+ clickLocationExpandButton(relayProvider.getDefaultRelay().country)
+ clickLocationExpandButton(relayProvider.getDefaultRelay().city)
+ clickLocationCell(relayProvider.getDefaultRelay().relay)
+ }
- device.acceptVpnPermissionDialog()
+ device.acceptVpnPermissionDialog()
- var relayIpAddress: String? = null
+ var relayIpAddress: String? = null
- on<ConnectPage> {
- waitForConnectedLabel()
- relayIpAddress = extractInIpv4Address()
- clickDisconnect()
- }
+ on<ConnectPage> {
+ waitForConnectedLabel()
+ relayIpAddress = extractInIpv4Address()
+ clickDisconnect()
+ }
- // Block UDP traffic to the relay
- val firewallRule = DropRule.blockUDPTrafficRule(relayIpAddress!!)
- firewallClient.createRule(firewallRule)
+ // Block UDP traffic to the relay
+ val firewallRule = DropRule.blockUDPTrafficRule(relayIpAddress!!)
+ firewallClient.createRule(firewallRule)
- on<ConnectPage> {
- clickConnect()
- // Currently it takes ~45 seconds to connect with wg obfuscation automatic and UDP
- // traffic blocked so we need to be very forgiving
- waitForConnectedLabel(timeout = VERY_FORGIVING_WIREGUARD_OFF_CONNECTION_TIMEOUT)
+ on<ConnectPage> {
+ clickConnect()
+ // Currently it takes ~45 seconds to connect with wg obfuscation automatic and UDP
+ // traffic blocked so we need to be very forgiving
+ waitForConnectedLabel(timeout = VERY_FORGIVING_WIREGUARD_OFF_CONNECTION_TIMEOUT)
+ }
}
- }
@Test
@HasDependencyOnLocalAPI