10

在测试引发异常的方法时,我无法正确获取 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() )

       }

}

我在“it”声明行收到以下错误

Invalid conversion from throwing function of type '() -> () throws to non-throwing function of type '() -> ()'
4

1 回答 1

15

尝试使用带大括号 { } 的期望

expect { try datastore.getCurrentObject() }.to( throwError() )

应该工作

于 2017-06-20T10:55:42.283 回答