2014-11-05 94 views
0

我是新來的迅速和我不明白的隱含類型轉換,我有這樣的一個單元測試:雨燕集合測試

let protocols: AnyObject? = NSBundle.mainBundle().infoDictionary?["UISupportedExternalAccessoryProtocols"]; 

我需要測試protocols存在,是一個數組,包含「foo」和「bar」。

回答

0

我想出了這個解決方案:

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"); 
} 

有沒有更好的方式來處理呢?

+0

這就是我該怎麼做的。順便說一句,你可能已經知道,但你不需要分號。 – DPlusV 2014-11-05 10:07:35