Output the route:list Command as JSON in Laravel 5.8.25

Output the route:list Command as JSON in Laravel 5.8.25

The Laravel team released v5.8.25 this week with the ability to output the route:list report in JSON format and improvements for asserting view data in tests.

Please note that since v5.8.25 was released, version 5.8.26 was tagged shortly after with a revert and you should update to v5.8.26. The bulk of the most recent updates are in Laravel 5.8.25 which we highlight below.

First, you can now output the route list from the CLI as JSON:

php artisan route:list --json

[{"domain":null,"method":"GET|HEAD","uri":"\/","name":null,"action":"Closure","middleware":"web"},
{"domain":null,"method":"GET|HEAD","uri":"api\/user","name":null,"action":"Closure","middleware":"api,auth:api"}]

Next, tests can assert all the view data by exposing the View::gatherData() method as public:

$response = $this->get('some/request');

$response->original->gatherData();

// Example assertion
$this->assertArrayHasKey('someKey', $response->original->gatherData());

A longstanding issue was resolved by Dries Vints for passing column parameters on the paginate method:

DB::table('posts')->paginate(5, ['title', 'content']);

Check out Pull Request #28937 for more details on the test coverage added and the code change.

You can see the whole diff between 5.8.24 and 5.8.25 on GitHub. We will include release notes once the changlog has been updated, but GitHub is always the most accurate place to see releases.

Filed in: News / Releases
Laravel News Partners

Laravel Jobs

PHP Developer - Full time w/ benefits, US Only
Northern Virginia or Remote (US Only)
Guidance Residential
Full Stack Developer
Remote
Wehaa.com
Laravel API Developer
Las Vegas, NV (Must work on-site)
V Shred
Laravel Developer (Vue, SQL Server)
Remote
World Trade Organization
Web Application Developer (Vue.js & Laravel)
Remote
Apero Creative Development

Newsletter

Join 31,000+ others and never miss out on new tips, tutorials, and more.