Emcee
30 строк · 1002.0 Байт
1import Foundation
2import EmceeLogging
3import QueueModels
4
5public final class BucketQueueStateLogger {
6private let runningQueueState: RunningQueueState
7private let logger: ContextualLogger
8
9public init(
10runningQueueState: RunningQueueState,
11logger: ContextualLogger
12) {
13self.runningQueueState = runningQueueState
14self.logger = logger
15}
16
17public func printQueueSize() {
18let dequeuedTests = runningQueueState.dequeuedTests.asDictionary
19
20let logger = logger.skippingKibana
21
22for workerId in Array(dequeuedTests.keys).sorted() {
23if let testsOnWorker = dequeuedTests[workerId] {
24logger.info("\(workerId.value) is executing \(testsOnWorker.map(\.stringValue).sorted().joined(separator: ", "))")
25}
26}
27
28logger.info("Enqueued tests: \(runningQueueState.enqueuedTests.count), running tests: \(runningQueueState.dequeuedTests.flattenValues.count)")
29}
30}
31