A
Size: a a a
A
KY
V
KY
KY
KY
KY
V
VS
S7
AK
{
"data": [{
"id": "237477048",
"firstName": "Alpha"
}, {
"id": "361333714",
"firstName": "Beta",
}, {
"id": "553093993",
"firstName": "Gamma",
}]
}
// some prior request code
.check(jmesPath("data[*].id").ofType[Seq[Any]].transform((x: Seq[Any]) => {
x(Random.nextInt(x.length)).toString
}).saveAs("userId"))
jmesPath
("data[*].id"
) находит все айдишки и возвращает их в виде строчного представления массива: ["237477048
", "361333714
", "553093993
"].ofType[T]
которому надо скормить тип Seq[Any]
при чем именно Any, потому что иначе будет ошибка компилляции..transform
метод. И тут главное обязательно указать аргументу x
(ну или как вы его назовете) тип такой же как в .ofType
, в нашем случае Seq[Any]
, иначе снова получим ошибку компилляции. Далее в теле функции стандартным подходом изымаем рандомный элемент, производим над ним любые манипуляции, и не забываем привести его тип Any
к нужному нам, будь то String
или что угодно другое.ΙΤ
{
"data": [{
"id": "237477048",
"firstName": "Alpha"
}, {
"id": "361333714",
"firstName": "Beta",
}, {
"id": "553093993",
"firstName": "Gamma",
}]
}
// some prior request code
.check(jmesPath("data[*].id").ofType[Seq[Any]].transform((x: Seq[Any]) => {
x(Random.nextInt(x.length)).toString
}).saveAs("userId"))
jmesPath
("data[*].id"
) находит все айдишки и возвращает их в виде строчного представления массива: ["237477048
", "361333714
", "553093993
"].ofType[T]
которому надо скормить тип Seq[Any]
при чем именно Any, потому что иначе будет ошибка компилляции..transform
метод. И тут главное обязательно указать аргументу x
(ну или как вы его назовете) тип такой же как в .ofType
, в нашем случае Seq[Any]
, иначе снова получим ошибку компилляции. Далее в теле функции стандартным подходом изымаем рандомный элемент, производим над ним любые манипуляции, и не забываем привести его тип Any
к нужному нам, будь то String
или что угодно другое.ΙΤ
ΙΤ
AK
ΙΤ
ΙΤ
foo
if foo
points to an indexed collectionΙΤ