Emcee

Форк
0
/
MultipleQueuesStuckBucketsReenqueuerTests.swift 
46 строк · 1.5 Кб
1
import BalancingBucketQueue
2
import BucketQueueModels
3
import BucketQueueTestHelpers
4
import QueueModelsTestHelpers
5
import TestHelpers
6
import Foundation
7
import XCTest
8

9
final class MultipleQueuesStuckBucketsReenqueuerTests: XCTestCase {
10
    lazy var multipleQueuesContainer = MultipleQueuesContainer()
11
    lazy var stuckBucketsReenqueuerProvider = FakeStuckBucketsReenqueuerProvider()
12
    lazy var multipleQueuesStuckBucketsReenqueuer = MultipleQueuesStuckBucketsReenqueuer(
13
        multipleQueuesContainer: multipleQueuesContainer,
14
        stuckBucketsReenqueuerProvider: stuckBucketsReenqueuerProvider
15
    )
16
    
17
    func test() {
18
        let stuckBucket = StuckBucket(
19
            reason: .bucketLost,
20
            bucket: BucketFixtures().bucket(),
21
            workerId: "worker"
22
        )
23
        multipleQueuesContainer.add(runningJobQueue: createJobQueue())
24
        
25
        stuckBucketsReenqueuerProvider.fakeStuckBucketsReenqueuer.result = {
26
            [stuckBucket]
27
        }
28
        
29
        XCTAssertEqual(
30
            try multipleQueuesStuckBucketsReenqueuer.reenqueueStuckBuckets(),
31
            [stuckBucket]
32
        )
33
    }
34
    
35
    func test___rethrows() {
36
        multipleQueuesContainer.add(runningJobQueue: createJobQueue())
37
        
38
        stuckBucketsReenqueuerProvider.fakeStuckBucketsReenqueuer.result = {
39
            throw ErrorForTestingPurposes()
40
        }
41
        
42
        assertThrows {
43
            try multipleQueuesStuckBucketsReenqueuer.reenqueueStuckBuckets()
44
        }
45
    }
46
}
47

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.