Я обновил с Laravel 5.0 до 5.1
Набор тестов отлично работает, и я могу запустить команду phpunit. Но, когда я начинаю тестировать с помощью теста api, я всегда получаю ошибку foreach.
class ExampleTest extends TestCase { public function testLoginCredentials() { $this->post('/srv/plc/auth/login', ['data' => 'some data']) ->seeJson([ 'authorized' => true, ]); } }
Выше выглядит документация: http://laravel.com/docs/5.1/testing#testing-json-apis
Если я запустил свой тест через phpunit, я получаю следующую ошибку:
There was 1 error: 1) ExampleTest::testBasicExample ErrorException: Invalid argument supplied for foreach() /Applications/XAMPP/xamppfiles/htdocs/w/server/vendor/framework/src/Illuminate/Support/Arr.php:423 /Applications/XAMPP/xamppfiles/htdocs/w/server/vendor/framework/src/Illuminate/Support/helpers.php:301 /Applications/XAMPP/xamppfiles/htdocs/w/server/vendor/framework/src/Illuminate/Foundation/Testing/CrawlerTrait.php:365 /Applications/XAMPP/xamppfiles/htdocs/whennn/server/vendor/laravel/framework/src/Illuminate/Foundation/Testing/CrawlerTrait.php:352 /Applications/XAMPP/xamppfiles/htdocs/whennn/server/tests/ExampleTest.php:17 /Applications/XAMPP/xamppfiles/lib/php/PHPUnit/TextUI/Command.php:188 /Applications/XAMPP/xamppfiles/lib/php/PHPUnit/TextUI/Command.php:126 FAILURES! Tests: 1, Assertions: 0, Errors: 1.
Если я получаю запрос с $ this-> get, я получаю ту же ошибку. Такая же ошибка с другими конечными точками.
$ this-> посещение отлично работает.
После много отладки ….
Я действительно не знаю, почему seeJson должен быть массивом.
Я ожидал ошибку утверждения, вместо ошибки foreach