marshroute

Форк
0
/
PeekAndPopUtilityImplTests_registersViewControllerForPreviewing.swift 
80 строк · 3.2 Кб
1
import XCTest
2
@testable import Marshroute
3

4
final class PeekAndPopUtilityImplTests_registersViewControllerForPreviewing: BasePeekAndPopUtilityImplTestCase {    
5
    func testPeekAndPopUtility_registersViewControllerForPreviewing_ifViewControllerWasNotRegisteredBefore() {
6
        // When
7
        sourceViewController.shouldStartSpying = true
8
        registerSourceViewControllerForPreviewing()
9

10
        // Then
11
        XCTAssert(sourceViewController.registerForPreviewingCalledCount == 1)
12
        XCTAssert(sourceViewController.unregisterForPreviewingCalledCount == 0)
13
    }
14
    
15
    func testPeekAndPopUtility_reregistersViewControllerForPreviewing_ifViewControllerWasRegisteredBeforeWithSameView() {
16
        // Given
17
        registerSourceViewControllerForPreviewing()
18
        
19
        // When
20
        sourceViewController.shouldStartSpying = true
21
        registerSourceViewControllerForPreviewing()
22
        
23
        // Then
24
        XCTAssert(sourceViewController.registerForPreviewingCalledCount == 1)
25
        XCTAssert(sourceViewController.unregisterForPreviewingCalledCount == 1)
26
    }
27
    
28
    func testPeekAndPopUtility_registersViewControllerForPreviewing_ifViewControllerWasRegisteredBeforeWithOtherView() {
29
        // Given
30
        registerSourceViewControllerForPreviewing()
31
        
32
        // When
33
        sourceViewController.shouldStartSpying = true
34
        registerSourceViewControllerForPreviewingWithOtherSourceView()
35
        
36
        // Then
37
        XCTAssert(sourceViewController.registerForPreviewingCalledCount == 1)
38
        XCTAssert(sourceViewController.unregisterForPreviewingCalledCount == 0)
39
    }
40
    
41
    func testPeekAndPopUtility_unregistersViewControllerFromPreviewing_ifViewControllerWasRegisteredBeforeWithSameView() {
42
        // Given
43
        registerSourceViewControllerForPreviewing()
44
        
45
        // When
46
        sourceViewController.shouldStartSpying = true
47
        unregisterSourceViewControllerFromPreviewing()
48
        
49
        // Then
50
        XCTAssert(sourceViewController.registerForPreviewingCalledCount == 0)
51
        XCTAssert(sourceViewController.unregisterForPreviewingCalledCount == 1)
52
    }
53
    
54
    func testPeekAndPopUtility_unregistersNoViewControllerFromPreviewing_ifViewControllerWasRegisteredBeforeWithOtherView() {
55
        // Given
56
        registerSourceViewControllerForPreviewing()
57
        
58
        // When
59
        sourceViewController.shouldStartSpying = true
60
        unregisterSourceViewControllerFromPreviewingWithOtherSourceView()
61
        
62
        // Then
63
        XCTAssert(sourceViewController.registerForPreviewingCalledCount == 0)
64
        XCTAssert(sourceViewController.unregisterForPreviewingCalledCount == 0)
65
    }
66
    
67
    func testPeekAndPopUtility_unregistersViewControllerFromPreviewing_ifViewControllerWasRegisteredBeforeWithManyViews() {
68
        // Given
69
        registerSourceViewControllerForPreviewing()
70
        registerSourceViewControllerForPreviewingWithOtherSourceView()
71
        
72
        // When
73
        sourceViewController.shouldStartSpying = true
74
        unregisterSourceViewControllerFromPreviewingInAllSourceViews()
75
        
76
        // Then
77
        XCTAssert(sourceViewController.registerForPreviewingCalledCount == 0)
78
        XCTAssert(sourceViewController.unregisterForPreviewingCalledCount == 2)
79
    }
80
}    
81

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

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

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

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