Как получить пакет для класса, который реализует протокол? Здесь я пытаюсь с self.dynamicTypeКак получить пакет для подкласса, который реализует протокол в Swift 2?
Скажите, что у меня есть список возможных цветов, который хранится в моем репо в качестве списка ключевых значений, как мне получить доступ к этому при запуске протокола в XCTest (где NSBundle.mainBundle () не работает)?
protocol Car {
func possibleColors() -> [String]
}
extension Car {
func possibleColors() -> [String]{
let bundle = NSBundle(forClass: self.dynamicType)
if let path = bundle.pathForResource(unitName, ofType: "colors") {
let keyValueList = NSDictionary(contentsOfFile: path) {
return keyValueList.allKeys() as! [String]
}
}
return [String]()
}
}
Эта линия не работает:
let bundle = NSBundle(forClass: self.dynamicType)
действительный подход к этому становится сверток, если это может быть сделано без получения класса, то будет ОК ответ. Просто не могу найти способ.