Merge pull request #122 from adam-wojszczyk/issues/121-empty-list-as-a-value-of-a-field
Allow fields' values to be empty lists during searching for patterns
This commit is contained in:
@@ -139,7 +139,7 @@ class WireMockRequestStubStrategy extends BaseWireMockStubStrategy {
|
||||
}
|
||||
|
||||
private boolean containsPattern(Collection collection) {
|
||||
return collection.collect(this.&containsPattern).inject { a, b -> a || b }
|
||||
return collection.collect(this.&containsPattern).inject('') { a, b -> a || b }
|
||||
}
|
||||
|
||||
private boolean containsPattern(Object[] objects) {
|
||||
|
||||
@@ -1181,6 +1181,42 @@ class WireMockGroovyDslSpec extends WireMockSpec {
|
||||
''')
|
||||
}
|
||||
|
||||
@Issue("#121")
|
||||
def 'should generate stub with empty list as a value of a field'() {
|
||||
given:
|
||||
GroovyDsl groovyDsl = GroovyDsl.make {
|
||||
request {
|
||||
method('POST')
|
||||
body(
|
||||
values: []
|
||||
)
|
||||
}
|
||||
response {
|
||||
status 200
|
||||
}
|
||||
}
|
||||
when:
|
||||
String wireMockStub = new WireMockStubStrategy(groovyDsl).toWireMockClientStub()
|
||||
then:
|
||||
new JsonSlurper().parseText(wireMockStub) == new JsonSlurper().parseText('''
|
||||
{
|
||||
"request": {
|
||||
"method": "POST",
|
||||
"bodyPatterns": [
|
||||
{
|
||||
"equalToJson": "{\\"values\\":[]}"
|
||||
}
|
||||
]
|
||||
},
|
||||
"response": {
|
||||
"status": 200
|
||||
}
|
||||
}
|
||||
''')
|
||||
and:
|
||||
stubMappingIsValidWireMockStub(wireMockStub)
|
||||
}
|
||||
|
||||
String toJsonString(value) {
|
||||
new JsonBuilder(value).toPrettyString()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user