[英]Generating a Scala list of random size
我正在使用創建一個scala json:
lazy val genDefaultValue: Gen[List[JsonPatch]] = {
listOf(
genJson("/primary", true),
genJson("/secondary", true),
genJson("/fallback", true)
)
}
這將僅創建帶有項目之一的隨機json。 我無法使用上述3個列表元素創建隨機大小的列表。 ListSize可以是1到3之間的任何值。
genJson是一個內部函數,當通過預期類型的路徑Gen [T]時會創建一個Json。
一種選擇如下:
Random.shuffle()
對列表重新排序(如果您希望每次的順序都不同)。 .take(x)
,其中x是1到3之間的隨機值。 假設您使用的是ScalaCheck,並且genJson
返回Gen[JsonPatch]
的實例,以下代碼為JsonPatch
實例列表定義了一個生成器:
lazy val genDefaultvalue =
Gen.listOf(Gen.oneOf(genJson("/primary", true),
genJson("/secondary", true),
genJson("/fallback", true)))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.