marshroute

Форк
0
/
PeekAndPopUtilityImplTests_passesPeekViewControllerToUiKit.swift 
84 строки · 2.6 Кб
1
import XCTest
2
@testable import Marshroute
3

4
final class PeekAndPopUtilityImplTests_passesPeekViewControllerToUiKit: BasePeekAndPopUtilityImplTestCase {    
5
    func testPeekAndPopUtility_passesPeekViewControllerToUiKit_ifPeekBeginsOnOnscreenRegisteredViewController() {
6
        // Given
7
        bindSourceViewControllerToWindow()
8
        
9
        registerSourceViewControllerForPreviewing(
10
            onPeek: { _ in
11
                self.invokeTransitionToPeekViewController()
12
            }
13
        )
14
        
15
        // When
16
        let viewController = beginPeekOnRegisteredViewController()
17
        
18
        // Then
19
        XCTAssert(viewController === peekViewController)
20
    }
21
    
22
    func testPeekAndPopUtility_passesPeekViewControllerToUIKit_ifSamePeekFailedToBeginAndNewPeekBeginsOnOnscreenRegisteredViewController() {
23
        // Given
24
        bindSourceViewControllerToWindow()
25
        
26
        bindSourceViewController2ToWindow()
27
        
28
        registerSourceViewControllerForPreviewing()
29
        
30
        registerSourceViewController2ForPreviewing(
31
            onPeek: { _ in
32
                self.invokeTransitionToPeekViewController()
33
            }
34
        )
35
        
36
        // When
37
        beginPeekOnRegisteredViewController()
38
        
39
        let viewController2 = beginPeekOnRegisteredViewController2()
40
        
41
        // Then
42
        XCTAssert(viewController2 === peekViewController)
43
    }
44
    
45
    func testPeekAndPopUtility_passesNoPeekViewControllerToUIKit_ifPeekBeginsOnOffscreenRegisteredViewController() {
46
        // Given
47
        unbindSourceViewControllerFromWindow()
48
        
49
        registerSourceViewControllerForPreviewing(
50
            onPeek: { _ in
51
                self.invokeTransitionToPeekViewController()
52
            }
53
        )
54
        
55
        // When
56
        let viewController = beginPeekOnRegisteredViewController()
57
        
58
        // Then
59
        XCTAssert(viewController === nil)
60
    }    
61
    
62
    func testPeekAndPopUtility_passesNoPeekViewControllerToUIKit_ifSamePeekIsAlreadyBeganAndNewPeekBeginsOnOnscreenRegisteredViewController() {
63
        // Given
64
        bindSourceViewControllerToWindow()
65
       
66
        bindSourceViewController2ToWindow()
67
        
68
        registerSourceViewControllerForPreviewing(
69
            onPeek: { _ in
70
                self.invokeTransitionToPeekViewController()
71
            }
72
        )
73
        
74
        registerSourceViewController2ForPreviewing()
75
        
76
        // When
77
        beginPeekOnRegisteredViewController()
78
        
79
        let viewController2 = beginPeekOnRegisteredViewController2()
80
        
81
        // Then
82
        XCTAssert(viewController2 === nil)
83
    }
84
}    
85

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

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

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

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