2014-01-07 33 views
0

我試圖使用json對象作爲參數從testclass進行調用。我怎樣才能做到這一點?我在文檔中找不到任何東西。如果我使用Chrome Advanced Rest Client進行同樣的調用,並使用完全相同的json對象。但我不知道如何從測試中調用,因爲如果我使用Json對象調用,那麼它說它不允許使用String調用,如果我嘗試使用數組,它會顯示「UnexpectedValueException:響應內容必須是字符串或實現了__toString(),「boolean」給出的對象。 請幫助我,我嚇壞了。 :)使用laravel進行單元測試,使用Json參數調用

$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)); 

回答

0

試試這個:

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

你的想法是正確的,但您所創建的陣列的方式是沒有的。 IE:

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

不會在PHP中正確創建數組。

+0

非常感謝你,但它仍然會拋出同樣的異常。如果我做一個獲取或刪除調用一切正常,但只要我嘗試發佈或放一些它不起作用。 – Freak4365

+0

嘿,你可以粘貼你執行上面的代碼時得到的錯誤嗎? – berrberr

+0

錯誤出現在問題中,其「UnexpectedValueException:響應內容必須是實現__toString(),」boolean「給出的字符串或對象。 – Freak4365