Add support for response headers

This commit is contained in:
Dominik Adam Przybysz 2014-12-11 22:52:46 +01:00
parent 1be072f440
commit 3b6e4c8faf
6 changed files with 34 additions and 4 deletions

View file

@ -29,10 +29,11 @@ class ContextExecutor {
}
}
if (ex.requestMethod == mock.method && mock.predicate(xml)) {
ex.sendResponseHeaders(mock.statusCode, 0)
println "Mock ${mock.name} invoked"
++mock.counter
String response = mock.responseOk(xml)
mock.responseHeaders(xml).each { ex.responseHeaders.add(it.key as String, it.value as String)}
ex.sendResponseHeaders(mock.statusCode, 0)
ex.responseBody << (mock.soap ? wrapSoap(response) : response)
ex.responseBody.close()
return

View file

@ -61,6 +61,10 @@ class HttpMockServer {
if(method){
mock.method = method
}
String responseHeaders = request.responseHeaders
if(responseHeaders){
mock.responseHeaders = Eval.me(responseHeaders) as Closure
}
HttpServerWraper child = childServers.find { it.port == mockPort }
if (!child) {
child = new HttpServerWraper(mockPort)

View file

@ -13,7 +13,7 @@ class Mock {
int statusCode = 200
String method = 'POST'
//TODO add request headers - default [:]
//TODO add response headers - default [:]
Closure responseHeaders = {xml -> [:]}
int counter = 0
//TODO add historical invocations