Skip to content

Commit 1c2fbd3

Browse files
committed
Test LRD response
1 parent 582c65d commit 1c2fbd3

File tree

3 files changed

+13
-2
lines changed

3 files changed

+13
-2
lines changed

tests/Controllers/LaravelRequestDocsControllerTest.php

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
use Illuminate\Http\Request;
66
use Illuminate\Http\Response;
77
use Illuminate\Support\Facades\Config;
8+
use Illuminate\Support\Facades\File;
89
use Illuminate\Support\Facades\Route;
910
use Illuminate\Support\Str;
1011
use Rakutentech\LaravelRequestDocs\Tests\Stubs\TestControllers\API\Group1Controller;
@@ -16,8 +17,15 @@ class LaravelRequestDocsControllerTest extends TestCase
1617
{
1718
public function testApi()
1819
{
19-
$this->get(route('request-docs.api'))
20+
$response = $this->get(route('request-docs.api'))
2021
->assertStatus(Response::HTTP_OK);
22+
23+
$expected = (array) json_decode(
24+
File::get(base_path('tests/mocks/lrd-response.json')),
25+
true,
26+
);
27+
28+
$this->assertSame($expected, $response->json());
2129
}
2230

2331
public function testApiCanHideMetadata()
@@ -383,7 +391,7 @@ public function testGroupByControllerFullPath()
383391

384392
public function testOpenApi()
385393
{
386-
$response = $this->get(route('request-docs.api') . '?openapi=true')
394+
$this->get(route('request-docs.api') . '?openapi=true')
387395
->assertStatus(Response::HTTP_OK);
388396
}
389397
}

tests/TestCase.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ protected function getPackageProviders($app)
3131

3232
public function getEnvironmentSetUp($app)
3333
{
34+
app()->setBasePath(__DIR__ . '/../');
35+
3436
$app['config']->set('database.default', 'testing');
3537
$app['config']->set('app.debug', true);
3638
}

tests/mocks/lrd-response.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
[{"uri":"\/","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"index","http_method":"GET","rules":{"name":["nullable|string|min:5|max:255"],"title":["Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestRules\\Uppercase"],"file":["file"],"image":["image"],"page":["nullable|integer|min:1"],"per_page":["nullable|integer|min:1|max:100"]},"doc_block":"#Hello markdown\n## Documentation for \/my route\n","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"\/","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"index","http_method":"HEAD","rules":{"name":["nullable|string|min:5|max:255"],"title":["Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestRules\\Uppercase"],"file":["file"],"image":["image"],"page":["nullable|integer|min:1"],"per_page":["nullable|integer|min:1|max:100"]},"doc_block":"#Hello markdown\n## Documentation for \/my route\n","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"welcome","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"index","http_method":"GET","rules":{"name":["nullable|string|min:5|max:255"],"title":["Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestRules\\Uppercase"],"file":["file"],"image":["image"],"page":["nullable|integer|min:1"],"per_page":["nullable|integer|min:1|max:100"]},"doc_block":"#Hello markdown\n## Documentation for \/my route\n","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"welcome","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"index","http_method":"HEAD","rules":{"name":["nullable|string|min:5|max:255"],"title":["Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestRules\\Uppercase"],"file":["file"],"image":["image"],"page":["nullable|integer|min:1"],"per_page":["nullable|integer|min:1|max:100"]},"doc_block":"#Hello markdown\n## Documentation for \/my route\n","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"welcome\/{id}","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"show","http_method":"GET","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"welcome\/{id}","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"show","http_method":"HEAD","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"welcome","middlewares":["auth:api"],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"store","http_method":"POST","rules":{"error":["string","exists:"],"message_param":["nullable|string"]},"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"welcome","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"edit","http_method":"PUT","rules":{"message_param":["nullable|string"],"search_string":["string"],"search_array":["array"],"search_integer":["integer"],"search_boolean":["boolean"]},"doc_block":"","responses":["200","400","401"]},{"uri":"welcome\/patch","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"edit","http_method":"PATCH","rules":{"message_param":["nullable|string"],"search_string":["string"],"search_array":["array"],"search_integer":["integer"],"search_boolean":["boolean"]},"doc_block":"","responses":["200","400","401"]},{"uri":"welcome","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"destroy","http_method":"DELETE","rules":{"message_param":["nullable|string"]},"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"health","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"health","http_method":"GET","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"health","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"health","http_method":"HEAD","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"single","middlewares":[],"controller":"SingleActionController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\SingleActionController","method":"__invoke","http_method":"GET","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"single","middlewares":[],"controller":"SingleActionController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\SingleActionController","method":"__invoke","http_method":"HEAD","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"welcome\/no-rules","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"noRules","http_method":"DELETE","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"closure","middlewares":[],"controller":"","controller_full_path":"","method":"","http_method":"GET","rules":[],"doc_block":"","responses":[]},{"uri":"closure","middlewares":[],"controller":"","controller_full_path":"","method":"","http_method":"HEAD","rules":[],"doc_block":"","responses":[]},{"uri":"accounts","middlewares":[],"controller":"AccountController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\AccountController","method":"index","http_method":"GET","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"accounts","middlewares":[],"controller":"AccountController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\AccountController","method":"index","http_method":"HEAD","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"accounts","middlewares":[],"controller":"AccountController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\AccountController","method":"store","http_method":"POST","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"accounts\/{account}","middlewares":[],"controller":"AccountController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\AccountController","method":"show","http_method":"GET","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"accounts\/{account}","middlewares":[],"controller":"AccountController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\AccountController","method":"show","http_method":"HEAD","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"accounts\/{account}","middlewares":[],"controller":"AccountController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\AccountController","method":"update","http_method":"PUT","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"accounts\/{account}","middlewares":[],"controller":"AccountController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\AccountController","method":"update","http_method":"PATCH","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"accounts\/{account}","middlewares":[],"controller":"AccountController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\AccountController","method":"destroy","http_method":"DELETE","rules":[],"doc_block":"","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"any","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"index","http_method":"GET","rules":{"name":["nullable|string|min:5|max:255"],"title":["Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestRules\\Uppercase"],"file":["file"],"image":["image"],"page":["nullable|integer|min:1"],"per_page":["nullable|integer|min:1|max:100"]},"doc_block":"#Hello markdown\n## Documentation for \/my route\n","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"any","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"index","http_method":"HEAD","rules":{"name":["nullable|string|min:5|max:255"],"title":["Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestRules\\Uppercase"],"file":["file"],"image":["image"],"page":["nullable|integer|min:1"],"per_page":["nullable|integer|min:1|max:100"]},"doc_block":"#Hello markdown\n## Documentation for \/my route\n","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"any","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"index","http_method":"POST","rules":{"name":["nullable|string|min:5|max:255"],"title":["Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestRules\\Uppercase"],"file":["file"],"image":["image"],"page":["nullable|integer|min:1"],"per_page":["nullable|integer|min:1|max:100"]},"doc_block":"#Hello markdown\n## Documentation for \/my route\n","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"any","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"index","http_method":"PUT","rules":{"name":["nullable|string|min:5|max:255"],"title":["Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestRules\\Uppercase"],"file":["file"],"image":["image"],"page":["nullable|integer|min:1"],"per_page":["nullable|integer|min:1|max:100"]},"doc_block":"#Hello markdown\n## Documentation for \/my route\n","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"any","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"index","http_method":"PATCH","rules":{"name":["nullable|string|min:5|max:255"],"title":["Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestRules\\Uppercase"],"file":["file"],"image":["image"],"page":["nullable|integer|min:1"],"per_page":["nullable|integer|min:1|max:100"]},"doc_block":"#Hello markdown\n## Documentation for \/my route\n","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"any","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"index","http_method":"DELETE","rules":{"name":["nullable|string|min:5|max:255"],"title":["Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestRules\\Uppercase"],"file":["file"],"image":["image"],"page":["nullable|integer|min:1"],"per_page":["nullable|integer|min:1|max:100"]},"doc_block":"#Hello markdown\n## Documentation for \/my route\n","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"match","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"index","http_method":"GET","rules":{"name":["nullable|string|min:5|max:255"],"title":["Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestRules\\Uppercase"],"file":["file"],"image":["image"],"page":["nullable|integer|min:1"],"per_page":["nullable|integer|min:1|max:100"]},"doc_block":"#Hello markdown\n## Documentation for \/my route\n","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"match","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"index","http_method":"POST","rules":{"name":["nullable|string|min:5|max:255"],"title":["Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestRules\\Uppercase"],"file":["file"],"image":["image"],"page":["nullable|integer|min:1"],"per_page":["nullable|integer|min:1|max:100"]},"doc_block":"#Hello markdown\n## Documentation for \/my route\n","responses":["200","400","401","403","404","405","422","429","500","503"]},{"uri":"match","middlewares":[],"controller":"WelcomeController","controller_full_path":"Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestControllers\\WelcomeController","method":"index","http_method":"HEAD","rules":{"name":["nullable|string|min:5|max:255"],"title":["Rakutentech\\LaravelRequestDocs\\Tests\\Stubs\\TestRules\\Uppercase"],"file":["file"],"image":["image"],"page":["nullable|integer|min:1"],"per_page":["nullable|integer|min:1|max:100"]},"doc_block":"#Hello markdown\n## Documentation for \/my route\n","responses":["200","400","401","403","404","405","422","429","500","503"]}]

0 commit comments

Comments
 (0)