summaryrefslogtreecommitdiffhomepage
path: root/ios/MullvadRustRuntimeTests
diff options
context:
space:
mode:
authorBug Magnet <marco.nikic@mullvad.net>2025-05-16 16:20:55 +0200
committerBug Magnet <marco.nikic@mullvad.net>2025-05-27 14:53:21 +0200
commitbbf890b10bda837308c05a3de6ac67df5aa2e06e (patch)
tree3cac8d83c8c28c2532d3649a5a13d2e54e351cc4 /ios/MullvadRustRuntimeTests
parent6c9f7ec18da5bd26ce5880e5dc8f5c8b83d5f77f (diff)
downloadmullvadvpn-bbf890b10bda837308c05a3de6ac67df5aa2e06e.tar.xz
mullvadvpn-bbf890b10bda837308c05a3de6ac67df5aa2e06e.zip
Enable Swift 6 mode for the PacketTunnel and test Target
Diffstat (limited to 'ios/MullvadRustRuntimeTests')
-rw-r--r--ios/MullvadRustRuntimeTests/EphemeralPeerExchangeActorTests.swift5
-rw-r--r--ios/MullvadRustRuntimeTests/MullvadPostQuantum+Stubs.swift28
-rw-r--r--ios/MullvadRustRuntimeTests/TCPConnection.swift2
-rw-r--r--ios/MullvadRustRuntimeTests/UDPConnection.swift2
4 files changed, 3 insertions, 34 deletions
diff --git a/ios/MullvadRustRuntimeTests/EphemeralPeerExchangeActorTests.swift b/ios/MullvadRustRuntimeTests/EphemeralPeerExchangeActorTests.swift
index efc8c0fe0d..82e0ebdb48 100644
--- a/ios/MullvadRustRuntimeTests/EphemeralPeerExchangeActorTests.swift
+++ b/ios/MullvadRustRuntimeTests/EphemeralPeerExchangeActorTests.swift
@@ -15,12 +15,10 @@ import NetworkExtension
import XCTest
class EphemeralPeerExchangeActorTests: XCTestCase {
- var tcpConnection: NWTCPConnectionStub!
var tunnelProvider: TunnelProviderStub!
override func setUpWithError() throws {
- tcpConnection = NWTCPConnectionStub()
- tunnelProvider = TunnelProviderStub(tcpConnection: tcpConnection)
+ tunnelProvider = TunnelProviderStub()
}
func testKeyExchangeFailsWhenNegotiationCannotStart() {
@@ -37,7 +35,6 @@ class EphemeralPeerExchangeActorTests: XCTestCase {
let privateKey = PrivateKey()
keyExchangeActor.startNegotiation(with: privateKey, enablePostQuantum: true, enableDaita: false)
- tcpConnection.becomeViable()
wait(for: [negotiationFailure])
}
diff --git a/ios/MullvadRustRuntimeTests/MullvadPostQuantum+Stubs.swift b/ios/MullvadRustRuntimeTests/MullvadPostQuantum+Stubs.swift
index 59805230be..a62771003e 100644
--- a/ios/MullvadRustRuntimeTests/MullvadPostQuantum+Stubs.swift
+++ b/ios/MullvadRustRuntimeTests/MullvadPostQuantum+Stubs.swift
@@ -12,19 +12,6 @@ import NetworkExtension
@testable import PacketTunnelCore
@testable import WireGuardKitTypes
-class NWTCPConnectionStub: NWTCPConnection {
- var _isViable = false
- override var isViable: Bool {
- _isViable
- }
-
- func becomeViable() {
- willChangeValue(for: \.isViable)
- _isViable = true
- didChangeValue(for: \.isViable)
- }
-}
-
class TunnelProviderStub: TunnelProvider {
func tunnelHandle() throws -> Int32 {
0
@@ -38,21 +25,6 @@ class TunnelProviderStub: TunnelProvider {
send: { _, _, _, _ in return 0 }
)
}
-
- let tcpConnection: NWTCPConnectionStub
-
- init(tcpConnection: NWTCPConnectionStub) {
- self.tcpConnection = tcpConnection
- }
-
- func createTCPConnectionThroughTunnel(
- to remoteEndpoint: NWEndpoint,
- enableTLS: Bool,
- tlsParameters TLSParameters: NWTLSParameters?,
- delegate: Any?
- ) -> NWTCPConnection {
- tcpConnection
- }
}
class FailedNegotiatorStub: EphemeralPeerNegotiating {
diff --git a/ios/MullvadRustRuntimeTests/TCPConnection.swift b/ios/MullvadRustRuntimeTests/TCPConnection.swift
index cffce29e4e..c4c74ce76a 100644
--- a/ios/MullvadRustRuntimeTests/TCPConnection.swift
+++ b/ios/MullvadRustRuntimeTests/TCPConnection.swift
@@ -11,7 +11,7 @@ import Network
/// Minimal implementation of TCP connection capable of receiving data.
/// > Warning: Do not use this implementation in production code. See the warning in `start()`.
-class TCPConnection: Connection {
+class TCPConnection: Connection, @unchecked Sendable {
private let dispatchQueue = DispatchQueue(label: "TCPConnection")
private let nwConnection: NWConnection
diff --git a/ios/MullvadRustRuntimeTests/UDPConnection.swift b/ios/MullvadRustRuntimeTests/UDPConnection.swift
index 66ef178d96..c4b3becc1d 100644
--- a/ios/MullvadRustRuntimeTests/UDPConnection.swift
+++ b/ios/MullvadRustRuntimeTests/UDPConnection.swift
@@ -16,7 +16,7 @@ protocol Connection {
/// Minimal implementation of UDP connection capable of sending data.
/// > Warning: Do not use this implementation in production code. See the warning in `start()`.
-class UDPConnection: Connection {
+class UDPConnection: Connection, @unchecked Sendable {
private let dispatchQueue = DispatchQueue(label: "UDPConnection")
private let nwConnection: NWConnection