Arrays Wiremock-如何匹配JSON中多部分/表单数据的数组元素的所有排列?
我试图使用JSON Wiremock模拟YAML API,以获取PUT多部分/表单数据。多部分包含两个元数据数组。如何匹配每个数组中的一组特定值(或正则表达式),而不考虑顺序 我们一定要使用YAML 2.0(如果您想知道的话),这就是为什么我们有这两个元数据数组。我已经能够成功地匹配数组的特定值(例如,对于fileMetadataName,我可以匹配“permissions,owner”),但我还没有找到如何匹配整个潜在值集(5个值,所有可能的排列,请参见下面的YAML) 以下是JSON Wiremock文件,它可以匹配数组的一种情况:Arrays Wiremock-如何匹配JSON中多部分/表单数据的数组元素的所有排列?,arrays,json,yaml,wiremock,Arrays,Json,Yaml,Wiremock,我试图使用JSON Wiremock模拟YAML API,以获取PUT多部分/表单数据。多部分包含两个元数据数组。如何匹配每个数组中的一组特定值(或正则表达式),而不考虑顺序 我们一定要使用YAML 2.0(如果您想知道的话),这就是为什么我们有这两个元数据数组。我已经能够成功地匹配数组的特定值(例如,对于fileMetadataName,我可以匹配“permissions,owner”),但我还没有找到如何匹配整个潜在值集(5个值,所有可能的排列,请参见下面的YAML) 以下是JSON Wir
{
"request": {
"method": "PUT",
"urlPath": "/files",
"headers": {
"Content-Type": { "contains": "multipart/form-data"},
"Source": { "matches": "POC(.+)"}
},
"multipartPatterns": [
{
"headers": {
"Content-Disposition": {
"contains": "name=\"typeOfFile\""
}
},
"bodyPatterns": [ {
"matches": "PDF"
} ]
},
{
"headers": {
"Content-Disposition": {
"contains": "name=\"fileMetadataName\""
}
},
"bodyPatterns": [ {
"matches": "permissions,owner"
} ]
}
]
},
"response": {
"status": 201,
"jsonBody": {
"DocumentId": "123456789-123456789"
}
}
}
下面是YAML的摘录,描述了多部分输入:
paths:
'/files':
put:
tags:
- ProofOfConcept
summary: Upload a file in the files repository
description: Do the job
operationId: putFile
consumes:
- multipart/form-data
produces:
- application/json
parameters:
- name: Source
description: ID of the sender
in: header
type: string
required: true
- name: theFile
description: The file to be uploaded
in: formData
required: true
type: file
- name: typeOfFile
description: 'File type: PDF, JPG...'
in: formData
required: true
type: string
- name: fileMetadataName
description: 'Metadata name. Possible values are: permissions, owner, group, creationDate, appGeneratedId (format: <app-name>;<id>)'
in: formData
type: array
items:
type: string
- name: fileMetadataValue
description: Value associated to the corresponding metadata name
in: formData
type: array
items:
type: string
responses:
'201':
description: Created
schema:
$ref: '#/definitions/DocumentId'
对于fileMetadataValue,我希望能够匹配所有排列的正则表达式值(例如,权限的([0-9]{3,3}))
permissions, owner, group, creationDate, appGeneratedId