mirror of
https://github.com/bitwarden/ios.git
synced 2025-12-11 13:54:06 -06:00
62 lines
2.0 KiB
Swift
62 lines
2.0 KiB
Swift
import AuthenticatorShared
|
|
import XCTest
|
|
|
|
@testable import Authenticator
|
|
|
|
// MARK: - SceneDelegateTests
|
|
|
|
class SceneDelegateTests: AuthenticatorTestCase {
|
|
// MARK: Properties
|
|
|
|
var appCoordinator: MockCoordinator<AppRoute>!
|
|
var appModule: MockAppModule!
|
|
var subject: SceneDelegate!
|
|
|
|
// MARK: Setup & Teardown
|
|
|
|
override func setUp() {
|
|
super.setUp()
|
|
appCoordinator = MockCoordinator<AppRoute>()
|
|
appModule = MockAppModule()
|
|
appModule.appCoordinator = appCoordinator.asAnyCoordinator()
|
|
subject = SceneDelegate()
|
|
subject.appModule = appModule
|
|
}
|
|
|
|
override func tearDown() {
|
|
super.tearDown()
|
|
appModule = nil
|
|
subject = nil
|
|
}
|
|
|
|
// MARK: Tests
|
|
|
|
/// `scene(_:willConnectTo:options:)` with a `UIWindowScene` creates the app's UI.
|
|
func test_sceneWillConnectTo_withWindowScene() throws {
|
|
let session = TestInstanceFactory.create(UISceneSession.self)
|
|
let scene = TestInstanceFactory.create(UIWindowScene.self, properties: [
|
|
"session": session,
|
|
])
|
|
let options = TestInstanceFactory.create(UIScene.ConnectionOptions.self)
|
|
subject.scene(scene, willConnectTo: session, options: options)
|
|
|
|
XCTAssertNotNil(subject.appCoordinator)
|
|
XCTAssertNotNil(subject.window)
|
|
XCTAssertTrue(appCoordinator.isStarted)
|
|
}
|
|
|
|
/// `scene(_:willConnectTo:options:)` without a `UIWindowScene` fails to create the app's UI.
|
|
func test_sceneWillConnectTo_withNonWindowScene() throws {
|
|
let session = TestInstanceFactory.create(UISceneSession.self)
|
|
let scene = TestInstanceFactory.create(UIScene.self, properties: [
|
|
"session": session,
|
|
])
|
|
let options = TestInstanceFactory.create(UIScene.ConnectionOptions.self)
|
|
subject.scene(scene, willConnectTo: session, options: options)
|
|
|
|
XCTAssertNil(subject.appCoordinator)
|
|
XCTAssertNil(subject.window)
|
|
XCTAssertFalse(appCoordinator.isStarted)
|
|
}
|
|
}
|