在测试抛出异常的方法时,我遇到了使Nimble匹配器正确的问题。根据文档,它应该很简单。我只需要这样的期待
expect( try somethingThatThrows() ).toNot( throwError() )
然而,使用Swift 3和Xcode 8.2,我得到了一个编译器编辑器。这是上下文。
describe("Using RealmDatasource") {
let datastore = RealmDatasource() as Datasource
it("can retrieve an object") {
expect( try datastore.getCurrentObject() ).to( throwError() )
}
}
我在'它上面得到以下错误。申报行
Invalid conversion from throwing function of type '() -> () throws to non-throwing function of type '() -> ()'
答案 0 :(得分:8)
尝试使用带括号{}
的expect expect { try datastore.getCurrentObject() }.to( throwError() )
应该正常工作