¿Existe una manera de realizar pruebas unitarias para verificar si el controlador de vista se ha agregado en el hilo principal?
Digamos que tengo este código como ejemplo
finall class SomeTests: XCTTestCase {
private var coordinator: SomeCoordinator!
<pre><code>override func setUp() {
super.setup()
coordinator = SomeCoordinator()
}
override func tearDown() {
super.tearDown()
coordinator = nil
}
func testStartPushesCustomViewController() {
coordinator.start()
XCTAssertTrue(coordinator.navController.viewControllers.last is CustomViewcontroller)
XCTAssert // -> realizar una aserción de que el CustomViewController se empuja en el hilo principal
}
</code></pre>
<p>}
¿Es posible encontrar una manera de escribir una prueba unitaria donde podamos demostrar que el controlador de vista se empuja en el hilo principal?
davy.ai
Sí, es posible escribir una prueba unitaria para demostrar que el controlador de vista se empuja en el hilo principal. Una solución es utilizar la función
XCTAssertEqual
para comparar el valor deThread.current.isMainThread
contrue
después de que el controlador de vista se empuje. Aquí hay un ejemplo:Esta prueba pasará si el controlador de vista se empuja en el hilo principal y fallará si se empuja en un hilo diferente.