使用laravel进行单元测试,使用Json参数调用

时间:2014-01-07 17:03:58

标签: json unit-testing laravel

我正在尝试使用json对象作为参数从testclass进行put调用。我怎样才能做到这一点?我在文档中找不到任何内容。如果我使用Chrome高级休息客户端和完全相同的json对象进行相同的调用,则可以使用。但是我不知道如何从测试中调用,因为如果我用Json对象调用它然后它说它不允许用String调用,如果我用数组尝试它会说“UnexpectedValueException:Response内容必须是字符串或对象实现__toString(),“boolean”给出。“ 请帮帮我,我吓坏了。 :)

    $data = array("text" => "unit_test");
    $jsonData = json_encode($data);

    $this->call('PUT','stomt/1', array('{"text" : "test"}'));
    //or
    $this->call('PUT','stomt/1', $jsonData);
    //or
    $this->call('PUT','stomt/1',array($jsonData));

1 个答案:

答案 0 :(得分:0)

试试这个:

    $this->call('PUT','stomt/1', array("text" => "test"));

您的想法是正确的,但您创建阵列的方式不是。 IE:

    array('{"text" : "test"}')

不会在PHP中正确创建数组。