diff options
| author | Bug Magnet <marco.nikic@mullvad.net> | 2025-03-17 13:19:38 +0100 |
|---|---|---|
| committer | Bug Magnet <marco.nikic@mullvad.net> | 2025-03-17 13:19:38 +0100 |
| commit | fd7ea9b6d85da82cb4d0c98435a9ec9f3e8d985d (patch) | |
| tree | b0a163c486dece0b10252a3df9684edb55137ec0 /ios | |
| parent | 102077516fa2c425a46cec5067bb281c23ca577b (diff) | |
| parent | 5064d244784884f2a43aba6c244530adf21e9eaa (diff) | |
| download | mullvadvpn-fd7ea9b6d85da82cb4d0c98435a9ec9f3e8d985d.tar.xz mullvadvpn-fd7ea9b6d85da82cb4d0c98435a9ec9f3e8d985d.zip | |
Merge branch 'fix-multihop-picker-issue-ios'
Diffstat (limited to 'ios')
| -rw-r--r-- | ios/MullvadREST/Relay/MultihopDecisionFlow.swift | 5 | ||||
| -rw-r--r-- | ios/MullvadVPNTests/MullvadREST/Relay/MultihopDecisionFlowTests.swift | 14 |
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 { |
