Signal-iOS/SignalServiceKit/tests/Network/MessageSenderJobRecordTest.swift
2024-01-04 14:37:54 -06:00

62 lines
1.7 KiB
Swift

//
// Copyright 2018 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
//
import Foundation
import XCTest
@testable import SignalServiceKit
class SSKMessageSenderJobRecordTest: SSKBaseTestSwift {
func test_savedVisibleMessage() {
let message = OutgoingMessageFactory().create()
self.read { transaction in
let jobRecord = try! MessageSenderJobRecord(
message: message,
isHighPriority: false,
transaction: transaction
)
XCTAssertNotNil(jobRecord.messageId)
XCTAssertNotNil(jobRecord.threadId)
XCTAssertNil(jobRecord.invisibleMessage)
}
}
func test_unsavedVisibleMessage() {
self.write { transaction in
let message = OutgoingMessageFactory().build(transaction: transaction)
do {
_ = try MessageSenderJobRecord(
message: message,
isHighPriority: false,
transaction: transaction
)
XCTFail("Should error")
} catch JobRecordError.assertionError {
// expected
} catch {
XCTFail("unexpected error: \(error)")
}
}
}
func test_invisibleMessage() {
let message = OutgoingMessageFactory().buildDeliveryReceipt()
self.read { transaction in
let jobRecord = try! MessageSenderJobRecord(
message: message,
isHighPriority: false,
transaction: transaction
)
XCTAssertNil(jobRecord.messageId)
XCTAssertNotNil(jobRecord.threadId)
XCTAssertNotNil(jobRecord.invisibleMessage)
}
}
}