0
我是新來的迅速和我不明白的隱含類型轉換,我有這樣的一個單元測試:雨燕集合測試
let protocols: AnyObject? = NSBundle.mainBundle().infoDictionary?["UISupportedExternalAccessoryProtocols"];
我需要測試protocols
存在,是一個數組,包含「foo」和「bar」。
我是新來的迅速和我不明白的隱含類型轉換,我有這樣的一個單元測試:雨燕集合測試
let protocols: AnyObject? = NSBundle.mainBundle().infoDictionary?["UISupportedExternalAccessoryProtocols"];
我需要測試protocols
存在,是一個數組,包含「foo」和「bar」。
我想出了這個解決方案:
let protocols: AnyObject? = NSBundle.mainBundle().infoDictionary?["UISupportedExternalAccessoryProtocols"];
if let p = protocols as? [String] {
XCTAssertTrue(contains(p, "foo"));
XCTAssertTrue(contains(p, "bar"));
} else {
XCTFail("UISupportedExternalAccessoryProtocols must be an array");
}
有沒有更好的方式來處理呢?
這就是我該怎麼做的。順便說一句,你可能已經知道,但你不需要分號。 – DPlusV 2014-11-05 10:07:35