获得以下JSON:
{"runtimeOptions": {
"framework": {
"name": "Microsoft.NETCore.App",
"version": "2.2.4"
}
}
}
,我想使用以下代码与PACT建立合同:
{
"content": [
7,
8,
9,
10
],
"last": true,
"total_elements": 9,
"total_pages": 2,
"first": false,
"number_of_elements": 4,
"size": 5,
"number": 1,
"empty": false
}
尽管这是可行的,但我真的不喜欢使用整数类型串联的数组协定。
我的问题是:有没有更好的方法来指示必须为Integer类型的X元素数组?
答案 0 :(得分:0)
您可以使用minArrayLike
。
@Test
public void test() {
DslPart body = newJsonBody((root) ->
root.minArrayLike("content", 4, PactDslJsonRootValue.integerType(1), 4)
.booleanType("last")
.numberType("total_elements")
.numberType("total_pages")
.booleanType("first")
.numberType("number_of_elements")
.numberType("size")
.numberType("number")
.booleanType("empty"))
.build();
System.out.println(body.toString());
}
生产
{
"content": [
1,
1,
1,
1
],
"number": 100,
"last": true,
"size": 100,
"total_elements": 100,
"total_pages": 100,
"number_of_elements": 100,
"first": true,
"empty": true
}