RxTest: неопределенные символы для архитектуры x86_64 и arm64 - PullRequest
0 голосов
/ 22 мая 2018

Я пытаюсь запустить следующий тест из Глава 16: Тестирование с помощью RxTest из Raywenderlich RxSwift book:

import XCTest
import RxSwift
import RxTest
@testable import Testing

class TestingViewModel : XCTestCase {

var viewModel: ViewModel!
var scheduler: ConcurrentDispatchQueueScheduler!

override func setUp() {
super.setUp()

viewModel = ViewModel()
scheduler = ConcurrentDispatchQueueScheduler(qos: .default)
}

func testColorNameIsRayWenderlichGreenWhenHexStringIs006636() {

// 1
let colorNameObservable = viewModel.colorName.asObservable().subscribeOn(scheduler)

// 2
viewModel.hexString.value = "#006636"

// 3
XCTAssertEqual("rayWenderlichGreen", try! colorNameObservable.toBlocking().first()!)
 }
}

Но я получаю эту ошибку на симуляторе:

Неопределенные символы для архитектуры x86_64: «метаданные типа для RxCocoa.DriverSharingStrategy», на которые ссылаются из: TestingTests.TestingViewModel.testColorNameIsRayWenderlichGreenWhenM66 (Inset) (Inst.o «Таблица-свидетель протокола для RxCocoa.DriverSharingStrategy: RxCocoa.SharingStrategyProtocol в RxCocoa», на которую ссылаются:ссылка на: TestingTests.TestingViewModel.testColorNameIsRayWenderlichGreenWhenHexStringIs006636 () -> () в TestingViewModel.o ld: символ (ы) не найден для архитектуры x86_64 clang: ошибка: команда компоновщика завершилась неудачно с кодом выхода 1 (используйте -v, чтобы увидеть i)nvocation)

И этот на iPhone 6s:

Неопределенные символы для архитектуры arm64: «метаданные типа для RxCocoa.DriverSharingStrategy», на которые ссылаются из: TestingTests.TestingViewModel.testColorWhenIGingsI() -> () в TestingViewModel.o «таблица-свидетель протокола для RxCocoa.DriverSharingStrategy: RxCocoa.SharingStrategyProtocol в RxCocoa», на которую ссылаются:() -> RxSwift.Observable ", на который ссылаются из: TestingTests.TestingViewModel.testColorNameIsRayWenderlichGreenWhenHexStringIs006636 () -> () в TestingViewModel.o ld: символ (ы) не найден для команды выхода из архитектуры arm64: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: ошибка: 1используйте -v для просмотра вызова)

К сожалению, эта проблема не поддерживается на форумах Raywenderlich.

1 Ответ

0 голосов
/ 22 мая 2018

После многих поисков, как кто-то предлагает здесь для другой подобной проблемы, я обнаружил, что эта ошибка будет решена путем импорта RxCocoa.

...