Я пытаюсь понять, есть ли что-то в рамках XCTest
, что не позволяет моему тестовому классу видеть инициализатор удобства, определенный в классе для модуля, который я тестирую? Я использую импорт @testable для переопределения и подкласса закрытых классов.
Раньше тесты работали корректно. Это какая-то ошибка XCode 11.4?
У меня есть несколько версий этой ошибки, каждый раз, когда это удобный инициализатор, даже если он объявлен общедоступным.
Ошибка: отсутствует аргумент для параметра "репозиторий" в вызове
//Inside FrameworkModule
public class RealObject {
init(repository: SomeRepository) {
//designated initializer
}
convenience override init() {
// Use default repository
}
}
//Inside Test class:
@testable import FrameworkModule
class MockObject: RealObject {
//Inherits initializers from RealObject
}
class TestHelper: NSObject {
var mockObject: MockObject!
}
override init() {
mockObject = MockObject() //Error Missing argument for parameter 'repository' in call
}
}