我正在使用SwiftCheck进行基于属性的测试,我想为几个符合id | patient_id | vaccine_id | took_all_vaccines | date_received | comment
-----------------------------------------------------------------------------
1 | 1 | 1 | null | 2019-01-01 | Lorem ipsum dolor set
-----------------------------------------------------------------------------
2 | 1 | 2 | null | 2019-01-12 | Lorem ipsum dolor set
-----------------------------------------------------------------------------
3 | 2 | null | 1 | 2018-09-21 | Lorem ipsum dolor set
协议的enum
生成随机元素。我认为,与其为所有CaseIterable
编写相同的代码,我可以做以下事情:
enum
由于多种原因,该编译失败,主要原因是
extension Any: Arbitrary where Self: CaseIterable {
public static var arbitrary: Gen<Self> {
return Gen<Self>.fromElements(of: Self.allCases)
}
}
有什么办法可以在Swift中表达出来吗?
答案 0 :(得分:3)
如果该计算的属性应该存在于符合CaseIterable
的所有类型上,则可以简单地扩展extension Arbitrary where Self: CaseIterable {
public static var arbitrary: Gen<Self> {
return Gen<Self>.fromElements(of: Array(Self.allCases))
}
}
本身。
http://localhost/site/index.php/india