reconcile jobqueue with new readiness based setup

pull/1/head
Michael Kirk 7 years ago
parent 2c44cbccfd
commit 79bed93b2d

@ -65,7 +65,7 @@ public class MessageSenderJobQueue: NSObject, JobQueue {
} }
private func add(message: TSOutgoingMessage, removeMessageAfterSending: Bool, transaction: YapDatabaseReadWriteTransaction) { private func add(message: TSOutgoingMessage, removeMessageAfterSending: Bool, transaction: YapDatabaseReadWriteTransaction) {
assert(AppReadiness.isAppReady()) assert(AppReadiness.isAppReady() || CurrentAppContext().isRunningTests)
let jobRecord: SSKMessageSenderJobRecord let jobRecord: SSKMessageSenderJobRecord
do { do {

@ -110,10 +110,21 @@ public extension JobQueue {
jobRecord.save(with: transaction) jobRecord.save(with: transaction)
transaction.addCompletionQueue(.global()) { transaction.addCompletionQueue(.global()) {
AppReadiness.runNowOrWhenAppDidBecomeReady { self.startWorkWhenAppIsReady()
DispatchQueue.global().async { }
self.workStep() }
}
func startWorkWhenAppIsReady() {
guard !CurrentAppContext().isRunningTests else {
DispatchQueue.global().async {
self.workStep()
}
return
}
AppReadiness.runNowOrWhenAppDidBecomeReady {
DispatchQueue.global().async {
self.workStep()
} }
} }
} }
@ -220,9 +231,7 @@ public extension JobQueue {
self.isSetup = true self.isSetup = true
DispatchQueue.global().async { self.startWorkWhenAppIsReady()
self.workStep()
}
} }
func remainingRetries(durableOperation: DurableOperationType) -> UInt { func remainingRetries(durableOperation: DurableOperationType) -> UInt {

@ -37,7 +37,7 @@ class MessageSenderJobQueueTest: SSKBaseTestSwift {
self.wait(for: [expectation], timeout: 0.1) self.wait(for: [expectation], timeout: 0.1)
} }
func test_waitsForReady() { func test_waitsForSetup() {
let message: TSOutgoingMessage = OutgoingMessageFactory().create() let message: TSOutgoingMessage = OutgoingMessageFactory().create()
let sentBeforeReadyExpectation = sentExpectation(message: message) let sentBeforeReadyExpectation = sentExpectation(message: message)

Loading…
Cancel
Save