-
Notifications
You must be signed in to change notification settings - Fork 1.2k
/
OptimizelyFeatureFlagToolsViewControllerTests.swift
41 lines (35 loc) · 1.43 KB
/
OptimizelyFeatureFlagToolsViewControllerTests.swift
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
@testable import Kickstarter_Framework
@testable import KsApi
@testable import Library
import Prelude
import SnapshotTesting
import UIKit
final class OptimizelyFeatureFlagToolsViewControllerTests: TestCase {
override func setUp() {
super.setUp()
AppEnvironment.pushEnvironment(mainBundle: Bundle.framework)
UIView.setAnimationsEnabled(false)
}
override func tearDown() {
AppEnvironment.popEnvironment()
UIView.setAnimationsEnabled(true)
super.tearDown()
}
func testOptimizelyFeatureFlagToolsViewController() {
let mockOptimizelyClient = MockOptimizelyClient()
|> \.features .~ [
OptimizelyFeature.commentFlaggingEnabled.rawValue: false,
OptimizelyFeature.projectPageStoryTabEnabled.rawValue: false,
OptimizelyFeature.paymentSheetEnabled.rawValue: false,
OptimizelyFeature.settingsPaymentSheetEnabled.rawValue: false,
OptimizelyFeature.facebookLoginDeprecationEnabled.rawValue: false,
OptimizelyFeature.consentManagementDialogEnabled.rawValue: false
]
withEnvironment(language: .en, mainBundle: MockBundle(), optimizelyClient: mockOptimizelyClient) {
let controller = OptimizelyFeatureFlagToolsViewController.instantiate()
let (parent, _) = traitControllers(device: .phone4_7inch, orientation: .portrait, child: controller)
self.scheduler.run()
assertSnapshot(matching: parent.view, as: .image(perceptualPrecision: 0.98))
}
}
}