From 2190c98ba155e1fdece19a721283dae53546bdfd Mon Sep 17 00:00:00 2001 From: nielsandriesse Date: Mon, 4 May 2020 16:17:18 +1000 Subject: [PATCH] Fix Swift/Obj-C interop --- .../FriendRequestProtocolTests.swift | 2 +- .../Multi Device/MultiDeviceProtocol.swift | 3 ++- .../SyncMessagesProtocolTests.swift | 2 +- .../{Test => }/LokiTestUtilities.swift | 17 ++++++----------- 4 files changed, 10 insertions(+), 14 deletions(-) rename SignalServiceKit/src/Loki/Utilities/{Test => }/LokiTestUtilities.swift (84%) diff --git a/SignalServiceKit/src/Loki/Protocol/Friend Requests/FriendRequestProtocolTests.swift b/SignalServiceKit/src/Loki/Protocol/Friend Requests/FriendRequestProtocolTests.swift index 9297371e0..86b8347dd 100644 --- a/SignalServiceKit/src/Loki/Protocol/Friend Requests/FriendRequestProtocolTests.swift +++ b/SignalServiceKit/src/Loki/Protocol/Friend Requests/FriendRequestProtocolTests.swift @@ -13,7 +13,7 @@ class FriendRequestProtocolTests : XCTestCase { override func setUp() { super.setUp() - LokiTestUtilities.setupMockEnvironment() + LokiTestUtilities.setUpMockEnvironment() } // MARK: - Helpers diff --git a/SignalServiceKit/src/Loki/Protocol/Multi Device/MultiDeviceProtocol.swift b/SignalServiceKit/src/Loki/Protocol/Multi Device/MultiDeviceProtocol.swift index 66b930464..afc73a8bf 100644 --- a/SignalServiceKit/src/Loki/Protocol/Multi Device/MultiDeviceProtocol.swift +++ b/SignalServiceKit/src/Loki/Protocol/Multi Device/MultiDeviceProtocol.swift @@ -261,8 +261,9 @@ public final class MultiDeviceProtocol : NSObject { } } + // MARK: - General @objc public static func isSlaveThread(_ thread: TSThread) -> Bool { - guard let thread = thread as? TSContactThread else { return false; } + guard let thread = thread as? TSContactThread else { return false } var isSlaveThread = false Storage.read { transaction in isSlaveThread = storage.getMasterHexEncodedPublicKey(for: thread.contactIdentifier(), in: transaction) != nil diff --git a/SignalServiceKit/src/Loki/Protocol/Sync Messages/SyncMessagesProtocolTests.swift b/SignalServiceKit/src/Loki/Protocol/Sync Messages/SyncMessagesProtocolTests.swift index 075ab8577..eccb928a3 100644 --- a/SignalServiceKit/src/Loki/Protocol/Sync Messages/SyncMessagesProtocolTests.swift +++ b/SignalServiceKit/src/Loki/Protocol/Sync Messages/SyncMessagesProtocolTests.swift @@ -9,7 +9,7 @@ class SyncMessagesProtocolTests : XCTestCase { override func setUp() { super.setUp() - LokiTestUtilities.setupMockEnvironment() + LokiTestUtilities.setUpMockEnvironment() } func testContactSyncMessageHandling() { diff --git a/SignalServiceKit/src/Loki/Utilities/Test/LokiTestUtilities.swift b/SignalServiceKit/src/Loki/Utilities/LokiTestUtilities.swift similarity index 84% rename from SignalServiceKit/src/Loki/Utilities/Test/LokiTestUtilities.swift rename to SignalServiceKit/src/Loki/Utilities/LokiTestUtilities.swift index cb3e0d499..1f3187ec3 100644 --- a/SignalServiceKit/src/Loki/Utilities/Test/LokiTestUtilities.swift +++ b/SignalServiceKit/src/Loki/Utilities/LokiTestUtilities.swift @@ -2,14 +2,14 @@ import Foundation import SignalServiceKit import Curve25519Kit -@objc(LKTestUtilities) -class LokiTestUtilities : NSObject { +enum LokiTestUtilities { - @objc public static func setupMockEnvironment() { + public static func setUpMockEnvironment() { + // Activate the mock Signal environment ClearCurrentAppContextForTests() SetCurrentAppContext(TestAppContext()) MockSSKEnvironment.activate() - + // Register a mock user let identityManager = OWSIdentityManager.shared() let seed = Randomness.generateRandomBytes(16)! let keyPair = Curve25519.generateKeyPair(fromSeed: seed + seed) @@ -19,29 +19,25 @@ class LokiTestUtilities : NSObject { TSAccountManager.sharedInstance().didRegister() } - @objc public static func generateKeyPair() -> ECKeyPair { + public static func generateKeyPair() -> ECKeyPair { return Curve25519.generateKeyPair() } - @objc public static func generateHexEncodedPublicKey() -> String { + public static func generateHexEncodedPublicKey() -> String { return generateKeyPair().hexEncodedPublicKey } - @objc(getDeviceForHexEncodedPublicKey:) public static func getDevice(for hexEncodedPublicKey: String) -> DeviceLink.Device? { guard let signature = Data.getSecureRandomData(ofSize: 64) else { return nil } return DeviceLink.Device(hexEncodedPublicKey: hexEncodedPublicKey, signature: signature) } - @objc(createContactThreadForHexEncodedPublicKey:) public static func createContactThread(for hexEncodedPublicKey: String) -> TSContactThread { return TSContactThread.getOrCreateThread(contactId: hexEncodedPublicKey) } - @objc(createGroupThreadWithGroupType:) public static func createGroupThread(groupType: GroupType) -> TSGroupThread? { let hexEncodedGroupID = Randomness.generateRandomBytes(kGroupIdLength)!.toHexString() - let groupID: Data switch groupType { case .closedGroup: groupID = LKGroupUtilities.getEncodedClosedGroupIDAsData(hexEncodedGroupID) @@ -49,7 +45,6 @@ class LokiTestUtilities : NSObject { case .rssFeed: groupID = LKGroupUtilities.getEncodedRSSFeedIDAsData(hexEncodedGroupID) default: return nil } - return TSGroupThread.getOrCreateThread(withGroupId: groupID, groupType: groupType) } }