开发者

Symfony Functional Test JSON

开发者 https://www.devze.com 2023-03-11 11:36 出处:网络
How can I test the response in Symfony functional test if an action returns a json object? I have the code

How can I test the response in Symfony functional test if an action returns a json object?

I have the code

with('response')->begin()->
   isHeader('content-type','application/json')->
end()
;

But the tes开发者_运维百科t always fails.


The following URL may show you how to test it: Practical symfony Day 15: Web Services

Here is the relevant code from that page:

$browser->
info('1 - Web service security')->

info('    1.1 - A token is needed to access the service')->
get('/api/foo/jobs.xml')->
with('response')->isStatusCode(404)->

info('    1.2 - An inactive account cannot access the web service')->
get('/api/symfony/jobs.xml')->
with('response')->isStatusCode(404)->

info('2 - The jobs returned are limited to the categories configured for the affiliate')->
get('/api/sensio_labs/jobs.xml')->
with('request')->isFormat('xml')->
with('response')->begin()->
    isValid()->
    checkElement('job', 32)->
end()->

info('3 - The web service supports the JSON format')->
get('/api/sensio_labs/jobs.json')->
with('request')->isFormat('json')->
with('response')->matches('/"category"\: "Programming"/')->

info('4 - The web service supports the YAML format')->
get('/api/sensio_labs/jobs.yaml')->
with('response')->begin()->
    isHeader('content-type', 'text/yaml; charset=utf-8')->
    matches('/category\: Programming/')->
end()
;
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号