summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--ios/MullvadREST/Relay/MultihopDecisionFlow.swift5
-rw-r--r--ios/MullvadVPNTests/MullvadREST/Relay/MultihopDecisionFlowTests.swift14
2 files changed, 11 insertions, 8 deletions
diff --git a/ios/MullvadREST/Relay/MultihopDecisionFlow.swift b/ios/MullvadREST/Relay/MultihopDecisionFlow.swift
index ff466507e2..dcb4106b95 100644
--- a/ios/MullvadREST/Relay/MultihopDecisionFlow.swift
+++ b/ios/MullvadREST/Relay/MultihopDecisionFlow.swift
@@ -92,11 +92,6 @@ struct OneToMany: MultihopDecisionFlow {
)
}
- guard !daitaAutomaticRouting else {
- return try ManyToOne(next: next, relayPicker: relayPicker)
- .pick(entryCandidates: entryCandidates, exitCandidates: exitCandidates, daitaAutomaticRouting: true)
- }
-
let entryMatch = try multihopPicker.findBestMatch(from: entryCandidates, useObfuscatedPortIfAvailable: true)
let exitMatch = try multihopPicker.exclude(
relay: entryMatch,
diff --git a/ios/MullvadVPNTests/MullvadREST/Relay/MultihopDecisionFlowTests.swift b/ios/MullvadVPNTests/MullvadREST/Relay/MultihopDecisionFlowTests.swift
index 94267d5b39..5b44407fe0 100644
--- a/ios/MullvadVPNTests/MullvadREST/Relay/MultihopDecisionFlowTests.swift
+++ b/ios/MullvadVPNTests/MullvadREST/Relay/MultihopDecisionFlowTests.swift
@@ -112,14 +112,22 @@ class MultihopDecisionFlowTests: XCTestCase {
let entryCandidates = [seSto2]
let exitCandidates = [seSto2, seSto6]
- let selectedRelays = try oneToMany.pick(
+ let selectedRelaysWithoutSmartRouting = try oneToMany.pick(
entryCandidates: entryCandidates,
exitCandidates: exitCandidates,
daitaAutomaticRouting: false
)
- XCTAssertEqual(selectedRelays.entry?.hostname, "se2-wireguard")
- XCTAssertEqual(selectedRelays.exit.hostname, "se6-wireguard")
+ XCTAssertEqual(selectedRelaysWithoutSmartRouting.entry?.hostname, "se2-wireguard")
+ XCTAssertEqual(selectedRelaysWithoutSmartRouting.exit.hostname, "se6-wireguard")
+
+ let selectedRelaysWithSmartRouting = try XCTUnwrap(oneToMany.pick(
+ entryCandidates: [seSto2],
+ exitCandidates: [seSto2, seSto6],
+ daitaAutomaticRouting: true
+ ))
+ XCTAssertEqual(selectedRelaysWithSmartRouting.entry?.hostname, "se2-wireguard")
+ XCTAssertEqual(selectedRelaysWithSmartRouting.exit.hostname, "se6-wireguard")
}
func testManyToOnePick() throws {