43 lines
1.3 KiB
Swift
43 lines
1.3 KiB
Swift
//
|
|
// Copyright 2022 Signal Messenger, LLC
|
|
// SPDX-License-Identifier: AGPL-3.0-only
|
|
//
|
|
|
|
import XCTest
|
|
|
|
@testable import SignalServiceKit
|
|
|
|
class TSContactThreadTest: SSKBaseTest {
|
|
private func contactThread() -> TSContactThread {
|
|
TSContactThread.getOrCreateThread(contactAddress: SignalServiceAddress.randomForTesting())
|
|
}
|
|
|
|
override func setUp() {
|
|
super.setUp()
|
|
SSKEnvironment.shared.databaseStorageRef.write { tx in
|
|
(DependenciesBridge.shared.registrationStateChangeManager as! RegistrationStateChangeManagerImpl).registerForTests(
|
|
localIdentifiers: .forUnitTests,
|
|
tx: tx.asV2Write
|
|
)
|
|
}
|
|
}
|
|
|
|
func testHasSafetyNumbersWithoutRemoteIdentity() {
|
|
XCTAssertFalse(contactThread().hasSafetyNumbers())
|
|
}
|
|
|
|
func testHasSafetyNumbersWithRemoteIdentity() {
|
|
let contactThread = self.contactThread()
|
|
|
|
let identityManager = DependenciesBridge.shared.identityManager
|
|
SSKEnvironment.shared.databaseStorageRef.write { tx in
|
|
identityManager.saveIdentityKey(Data(count: 32), for: contactThread.contactAddress.serviceId!, tx: tx.asV2Write)
|
|
}
|
|
|
|
XCTAssert(contactThread.hasSafetyNumbers())
|
|
}
|
|
|
|
func testCanSendChatMessagesToThread() {
|
|
XCTAssertTrue(contactThread().canSendChatMessagesToThread())
|
|
}
|
|
}
|