From 109b884d93494638c1f582ffe506f0d7f752f7c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Gr=C3=A4=C3=9Fel?= Date: Sun, 16 Aug 2020 16:07:09 +0200 Subject: [PATCH 1/3] Add support for namespaced JsonResources --- .../Statements/ResourceGenerator.php | 12 ++-- .../Generator/ControllerGeneratorTest.php | 1 + .../Statements/ResourceGeneratorTest.php | 36 ++++++++++ .../controllers/api-routes-example.php | 70 +++++++++++++++++++ tests/fixtures/drafts/api-routes-example.yaml | 2 +- .../resources/certificate-collection.php | 21 ++++++ tests/fixtures/resources/certificate.php | 27 +++++++ tests/fixtures/routes/api-routes.php | 2 +- 8 files changed, 165 insertions(+), 6 deletions(-) create mode 100644 tests/fixtures/controllers/api-routes-example.php create mode 100644 tests/fixtures/resources/certificate-collection.php create mode 100644 tests/fixtures/resources/certificate.php diff --git a/src/Generators/Statements/ResourceGenerator.php b/src/Generators/Statements/ResourceGenerator.php index 9d7a178e..11187407 100644 --- a/src/Generators/Statements/ResourceGenerator.php +++ b/src/Generators/Statements/ResourceGenerator.php @@ -42,7 +42,7 @@ public function output(Tree $tree): array continue; } - $path = $this->getPath($statement->name()); + $path = $this->getPath(($controller->namespace() ? $controller->namespace().'/' : '').$statement->name()); if ($this->files->exists($path)) { continue; @@ -52,7 +52,7 @@ public function output(Tree $tree): array $this->files->makeDirectory(dirname($path), 0755, true); } - $this->files->put($path, $this->populateStub($stub, $statement)); + $this->files->put($path, $this->populateStub($stub, $controller, $statement)); $output['created'][] = $path; } @@ -72,9 +72,13 @@ protected function getPath(string $name) return Blueprint::appPath().'/Http/Resources/'.$name.'.php'; } - protected function populateStub(string $stub, ResourceStatement $resource) + protected function populateStub(string $stub, Controller $controller, ResourceStatement $resource) { - $stub = str_replace('{{ namespace }}', config('blueprint.namespace').'\\Http\\Resources', $stub); + $namespace = config('blueprint.namespace') + .'\\Http\\Resources' + .($controller->namespace() ? '\\'.$controller->namespace() : ''); + + $stub = str_replace('{{ namespace }}', $namespace, $stub); $stub = str_replace('{{ import }}', $resource->collection() ? 'Illuminate\\Http\\Resources\\Json\\ResourceCollection' : 'Illuminate\\Http\\Resources\\Json\\JsonResource', $stub); $stub = str_replace('{{ parentClass }}', $resource->collection() ? 'ResourceCollection' : 'JsonResource', $stub); $stub = str_replace('{{ class }}', $resource->name(), $stub); diff --git a/tests/Feature/Generator/ControllerGeneratorTest.php b/tests/Feature/Generator/ControllerGeneratorTest.php index d5a214b0..cd3e78b4 100644 --- a/tests/Feature/Generator/ControllerGeneratorTest.php +++ b/tests/Feature/Generator/ControllerGeneratorTest.php @@ -175,6 +175,7 @@ public function controllerTreeDataProvider() ['drafts/respond-statements.yaml', 'app/Http/Controllers/Api/PostController.php', 'controllers/respond-statements.php'], ['drafts/resource-statements.yaml', 'app/Http/Controllers/UserController.php', 'controllers/resource-statements.php'], ['drafts/save-without-validation.yaml', 'app/Http/Controllers/PostController.php', 'controllers/save-without-validation.php'], + ['drafts/api-routes-example.yaml', 'app/Http/Controllers/Api/CertificateController.php', 'controllers/api-routes-example.php'], ]; } } diff --git a/tests/Feature/Generator/Statements/ResourceGeneratorTest.php b/tests/Feature/Generator/Statements/ResourceGeneratorTest.php index 646b8601..9c745237 100644 --- a/tests/Feature/Generator/Statements/ResourceGeneratorTest.php +++ b/tests/Feature/Generator/Statements/ResourceGeneratorTest.php @@ -100,4 +100,40 @@ public function output_writes_resources_for_render_statements() $this->assertEquals(['created' => ['app/Http/Resources/UserCollection.php', 'app/Http/Resources/User.php']], $this->subject->output($tree)); } + + /** + * @test + */ + public function output_writes_namespaced_classes() + { + $this->files->expects('stub') + ->with('resource.stub') + ->andReturn(file_get_contents('stubs/resource.stub')); + + $this->files->shouldReceive('exists') + ->with('app/Http/Resources/Api') + ->andReturns(false, true); + $this->files->expects('makeDirectory') + ->with('app/Http/Resources/Api', 0755, true); + + $this->files->expects('exists') + ->times(3) + ->with('app/Http/Resources/Api/Certificate.php') + ->andReturns(false, true, true); + $this->files->expects('put') + ->with('app/Http/Resources/Api/Certificate.php', $this->fixture('resources/certificate.php')); + + $this->files->expects('exists') + ->with('app/Http/Resources/Api/CertificateCollection.php') + ->andReturns(false); + $this->files->expects('put') + ->with('app/Http/Resources/Api/CertificateCollection.php', $this->fixture('resources/certificate-collection.php')); + + $tokens = $this->blueprint->parse($this->fixture('drafts/api-routes-example.yaml')); + $tree = $this->blueprint->analyze($tokens); + + $this->assertEquals([ + 'created' => ['app/Http/Resources/Api/CertificateCollection.php', 'app/Http/Resources/Api/Certificate.php'], + ], $this->subject->output($tree)); + } } diff --git a/tests/fixtures/controllers/api-routes-example.php b/tests/fixtures/controllers/api-routes-example.php new file mode 100644 index 00000000..66464c15 --- /dev/null +++ b/tests/fixtures/controllers/api-routes-example.php @@ -0,0 +1,70 @@ +validated()); + + return new CertificateResource($certificate); + } + + /** + * @param \Illuminate\Http\Request $request + * @param \App\Certificate $certificate + * @return \App\Http\Resources\Api\Certificate + */ + public function show(Request $request, Certificate $certificate) + { + return new CertificateResource($certificate); + } + + /** + * @param \App\Http\Requests\Api\CertificateUpdateRequest $request + * @param \App\Certificate $certificate + * @return \App\Http\Resources\Api\Certificate + */ + public function update(CertificateUpdateRequest $request, Certificate $certificate) + { + $certificate->update($request->validated()); + + return new CertificateResource($certificate); + } + + /** + * @param \Illuminate\Http\Request $request + * @param \App\Certificate $certificate + * @return \Illuminate\Http\Response + */ + public function destroy(Request $request, Certificate $certificate) + { + $certificate->delete(); + + return response()->noContent(200); + } +} diff --git a/tests/fixtures/drafts/api-routes-example.yaml b/tests/fixtures/drafts/api-routes-example.yaml index 2174602e..c4cd5702 100644 --- a/tests/fixtures/drafts/api-routes-example.yaml +++ b/tests/fixtures/drafts/api-routes-example.yaml @@ -8,5 +8,5 @@ models: remarks: text nullable controllers: - Certificate: + Api/Certificate: resource: api diff --git a/tests/fixtures/resources/certificate-collection.php b/tests/fixtures/resources/certificate-collection.php new file mode 100644 index 00000000..dc102284 --- /dev/null +++ b/tests/fixtures/resources/certificate-collection.php @@ -0,0 +1,21 @@ + $this->collection, + ]; + } +} diff --git a/tests/fixtures/resources/certificate.php b/tests/fixtures/resources/certificate.php new file mode 100644 index 00000000..2cdb029d --- /dev/null +++ b/tests/fixtures/resources/certificate.php @@ -0,0 +1,27 @@ + $this->id, + 'name' => $this->name, + 'certificate_type_id' => $this->certificate_type_id, + 'reference' => $this->reference, + 'document' => $this->document, + 'expiry_date' => $this->expiry_date, + 'remarks' => $this->remarks, + ]; + } +} diff --git a/tests/fixtures/routes/api-routes.php b/tests/fixtures/routes/api-routes.php index b23763b2..c4995442 100644 --- a/tests/fixtures/routes/api-routes.php +++ b/tests/fixtures/routes/api-routes.php @@ -1,3 +1,3 @@ -Route::apiResource('certificate', 'CertificateController'); +Route::apiResource('certificate', 'Api\CertificateController'); From 6b15b965512ab5c1c47f0f52a5224d1c53c080c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Gr=C3=A4=C3=9Fel?= Date: Sun, 16 Aug 2020 16:20:32 +0200 Subject: [PATCH 2/3] Use aliased resource imports in controllers That way resources do not need to be imported twice: via FQCN and inline import. --- src/Generators/ControllerGenerator.php | 10 +++++++--- tests/fixtures/controllers/api-routes-example.php | 6 +++--- tests/fixtures/controllers/certificate-controller.php | 6 +++--- .../controllers/certificate-type-controller.php | 6 +++--- tests/fixtures/controllers/custom-models-namespace.php | 6 +++--- tests/fixtures/controllers/resource-statements.php | 4 ++-- 6 files changed, 21 insertions(+), 17 deletions(-) diff --git a/src/Generators/ControllerGenerator.php b/src/Generators/ControllerGenerator.php index 7d8f8175..5afdb798 100644 --- a/src/Generators/ControllerGenerator.php +++ b/src/Generators/ControllerGenerator.php @@ -140,13 +140,17 @@ protected function buildMethods(Controller $controller) } elseif ($statement instanceof ResourceStatement) { $fqcn = config('blueprint.namespace').'\\Http\\Resources\\'.($controller->namespace() ? $controller->namespace().'\\' : '').$statement->name(); - $method = str_replace('* @return \\Illuminate\\Http\\Response', '* @return \\'.$fqcn, $method); - $import = $fqcn; + if (!$statement->collection()) { - $import .= ' as '.$statement->name().'Resource'; + $fqcn = $statement->name().'Resource'; + $import .= ' as '.$fqcn; + } else { + $fqcn = "\\{$fqcn}"; } + $method = str_replace('* @return \\Illuminate\\Http\\Response', '* @return '.$fqcn, $method); + $this->addImport($controller, $import); $body .= self::INDENT.$statement->output().PHP_EOL; diff --git a/tests/fixtures/controllers/api-routes-example.php b/tests/fixtures/controllers/api-routes-example.php index 66464c15..e84396d9 100644 --- a/tests/fixtures/controllers/api-routes-example.php +++ b/tests/fixtures/controllers/api-routes-example.php @@ -25,7 +25,7 @@ public function index(Request $request) /** * @param \App\Http\Requests\Api\CertificateStoreRequest $request - * @return \App\Http\Resources\Api\Certificate + * @return CertificateResource */ public function store(CertificateStoreRequest $request) { @@ -37,7 +37,7 @@ public function store(CertificateStoreRequest $request) /** * @param \Illuminate\Http\Request $request * @param \App\Certificate $certificate - * @return \App\Http\Resources\Api\Certificate + * @return CertificateResource */ public function show(Request $request, Certificate $certificate) { @@ -47,7 +47,7 @@ public function show(Request $request, Certificate $certificate) /** * @param \App\Http\Requests\Api\CertificateUpdateRequest $request * @param \App\Certificate $certificate - * @return \App\Http\Resources\Api\Certificate + * @return CertificateResource */ public function update(CertificateUpdateRequest $request, Certificate $certificate) { diff --git a/tests/fixtures/controllers/certificate-controller.php b/tests/fixtures/controllers/certificate-controller.php index a353ecf3..77620469 100644 --- a/tests/fixtures/controllers/certificate-controller.php +++ b/tests/fixtures/controllers/certificate-controller.php @@ -24,7 +24,7 @@ public function index(Request $request) /** * @param \App\Http\Requests\CertificateStoreRequest $request - * @return \App\Http\Resources\Certificate + * @return CertificateResource */ public function store(CertificateStoreRequest $request) { @@ -36,7 +36,7 @@ public function store(CertificateStoreRequest $request) /** * @param \Illuminate\Http\Request $request * @param \App\Certificate $certificate - * @return \App\Http\Resources\Certificate + * @return CertificateResource */ public function show(Request $request, Certificate $certificate) { @@ -46,7 +46,7 @@ public function show(Request $request, Certificate $certificate) /** * @param \App\Http\Requests\CertificateUpdateRequest $request * @param \App\Certificate $certificate - * @return \App\Http\Resources\Certificate + * @return CertificateResource */ public function update(CertificateUpdateRequest $request, Certificate $certificate) { diff --git a/tests/fixtures/controllers/certificate-type-controller.php b/tests/fixtures/controllers/certificate-type-controller.php index e33a957e..5ac59fd5 100644 --- a/tests/fixtures/controllers/certificate-type-controller.php +++ b/tests/fixtures/controllers/certificate-type-controller.php @@ -24,7 +24,7 @@ public function index(Request $request) /** * @param \App\Http\Requests\CertificateTypeStoreRequest $request - * @return \App\Http\Resources\CertificateType + * @return CertificateTypeResource */ public function store(CertificateTypeStoreRequest $request) { @@ -36,7 +36,7 @@ public function store(CertificateTypeStoreRequest $request) /** * @param \Illuminate\Http\Request $request * @param \App\CertificateType $certificateType - * @return \App\Http\Resources\CertificateType + * @return CertificateTypeResource */ public function show(Request $request, CertificateType $certificateType) { @@ -46,7 +46,7 @@ public function show(Request $request, CertificateType $certificateType) /** * @param \App\Http\Requests\CertificateTypeUpdateRequest $request * @param \App\CertificateType $certificateType - * @return \App\Http\Resources\CertificateType + * @return CertificateTypeResource */ public function update(CertificateTypeUpdateRequest $request, CertificateType $certificateType) { diff --git a/tests/fixtures/controllers/custom-models-namespace.php b/tests/fixtures/controllers/custom-models-namespace.php index 628d6a57..9b5c32f4 100644 --- a/tests/fixtures/controllers/custom-models-namespace.php +++ b/tests/fixtures/controllers/custom-models-namespace.php @@ -24,7 +24,7 @@ public function index(Request $request) /** * @param \App\Http\Requests\TagStoreRequest $request - * @return \App\Http\Resources\Tag + * @return TagResource */ public function store(TagStoreRequest $request) { @@ -36,7 +36,7 @@ public function store(TagStoreRequest $request) /** * @param \Illuminate\Http\Request $request * @param \App\Models\Tag $tag - * @return \App\Http\Resources\Tag + * @return TagResource */ public function show(Request $request, Tag $tag) { @@ -46,7 +46,7 @@ public function show(Request $request, Tag $tag) /** * @param \App\Http\Requests\TagUpdateRequest $request * @param \App\Models\Tag $tag - * @return \App\Http\Resources\Tag + * @return TagResource */ public function update(TagUpdateRequest $request, Tag $tag) { diff --git a/tests/fixtures/controllers/resource-statements.php b/tests/fixtures/controllers/resource-statements.php index 3e5a6687..902222b7 100644 --- a/tests/fixtures/controllers/resource-statements.php +++ b/tests/fixtures/controllers/resource-statements.php @@ -20,7 +20,7 @@ public function index(Request $request) /** * @param \Illuminate\Http\Request $request - * @return \App\Http\Resources\User + * @return UserResource */ public function store(Request $request) { @@ -30,7 +30,7 @@ public function store(Request $request) /** * @param \Illuminate\Http\Request $request * @param \App\User $user - * @return \App\Http\Resources\User + * @return UserResource */ public function show(Request $request, User $user) { From 563d8f014e40c25d3c7be0fa8db9f7dded8354c3 Mon Sep 17 00:00:00 2001 From: Jason McCreary Date: Fri, 21 Aug 2020 10:45:35 -0400 Subject: [PATCH 3/3] Suffix Resources for consistency --- src/Generators/ControllerGenerator.php | 16 ++-------------- src/Models/Statements/ResourceStatement.php | 9 ++------- .../Statements/ResourceGeneratorTest.php | 12 ++++++------ tests/Feature/Lexers/StatementLexerTest.php | 2 +- .../fixtures/controllers/api-routes-example.php | 8 ++++---- .../controllers/certificate-controller.php | 8 ++++---- .../controllers/certificate-type-controller.php | 8 ++++---- .../controllers/custom-models-namespace.php | 8 ++++---- .../fixtures/controllers/resource-statements.php | 6 +++--- tests/fixtures/resources/certificate.php | 2 +- tests/fixtures/resources/user.php | 2 +- 11 files changed, 32 insertions(+), 49 deletions(-) diff --git a/src/Generators/ControllerGenerator.php b/src/Generators/ControllerGenerator.php index 5afdb798..8c6a6851 100644 --- a/src/Generators/ControllerGenerator.php +++ b/src/Generators/ControllerGenerator.php @@ -139,20 +139,8 @@ protected function buildMethods(Controller $controller) $body .= self::INDENT.$statement->output().PHP_EOL; } elseif ($statement instanceof ResourceStatement) { $fqcn = config('blueprint.namespace').'\\Http\\Resources\\'.($controller->namespace() ? $controller->namespace().'\\' : '').$statement->name(); - - $import = $fqcn; - - if (!$statement->collection()) { - $fqcn = $statement->name().'Resource'; - $import .= ' as '.$fqcn; - } else { - $fqcn = "\\{$fqcn}"; - } - - $method = str_replace('* @return \\Illuminate\\Http\\Response', '* @return '.$fqcn, $method); - - $this->addImport($controller, $import); - + $method = str_replace('* @return \\Illuminate\\Http\\Response', '* @return \\'.$fqcn, $method); + $this->addImport($controller, $fqcn); $body .= self::INDENT.$statement->output().PHP_EOL; } elseif ($statement instanceof RedirectStatement) { $body .= self::INDENT.$statement->output().PHP_EOL; diff --git a/src/Models/Statements/ResourceStatement.php b/src/Models/Statements/ResourceStatement.php index b9d2c155..1bd78736 100644 --- a/src/Models/Statements/ResourceStatement.php +++ b/src/Models/Statements/ResourceStatement.php @@ -31,10 +31,10 @@ public function __construct(string $reference, bool $collection = false, bool $p public function name(): string { if ($this->collection()) { - return Str::studly(Str::singular($this->reference)) . 'Collection'; + return Str::studly(Str::singular($this->reference)) . 'Collection'; } - return Str::studly(Str::singular($this->reference)); + return Str::studly(Str::singular($this->reference)) . 'Resource'; } public function reference(): string @@ -55,11 +55,6 @@ public function paginate(): bool public function output(): string { $code = 'return new ' . $this->name(); - - if (!$this->collection()) { - $code .= 'Resource'; - } - $code .= '($' . $this->reference(); if ($this->paginate()) { diff --git a/tests/Feature/Generator/Statements/ResourceGeneratorTest.php b/tests/Feature/Generator/Statements/ResourceGeneratorTest.php index 9c745237..ca94ba0a 100644 --- a/tests/Feature/Generator/Statements/ResourceGeneratorTest.php +++ b/tests/Feature/Generator/Statements/ResourceGeneratorTest.php @@ -83,10 +83,10 @@ public function output_writes_resources_for_render_statements() $this->files->expects('exists') ->twice() - ->with('app/Http/Resources/User.php') + ->with('app/Http/Resources/UserResource.php') ->andReturns(false, true); $this->files->expects('put') - ->with('app/Http/Resources/User.php', $this->fixture('resources/user.php')); + ->with('app/Http/Resources/UserResource.php', $this->fixture('resources/user.php')); $this->files->expects('exists') ->twice() @@ -98,7 +98,7 @@ public function output_writes_resources_for_render_statements() $tokens = $this->blueprint->parse($this->fixture('drafts/resource-statements.yaml')); $tree = $this->blueprint->analyze($tokens); - $this->assertEquals(['created' => ['app/Http/Resources/UserCollection.php', 'app/Http/Resources/User.php']], $this->subject->output($tree)); + $this->assertEquals(['created' => ['app/Http/Resources/UserCollection.php', 'app/Http/Resources/UserResource.php']], $this->subject->output($tree)); } /** @@ -118,10 +118,10 @@ public function output_writes_namespaced_classes() $this->files->expects('exists') ->times(3) - ->with('app/Http/Resources/Api/Certificate.php') + ->with('app/Http/Resources/Api/CertificateResource.php') ->andReturns(false, true, true); $this->files->expects('put') - ->with('app/Http/Resources/Api/Certificate.php', $this->fixture('resources/certificate.php')); + ->with('app/Http/Resources/Api/CertificateResource.php', $this->fixture('resources/certificate.php')); $this->files->expects('exists') ->with('app/Http/Resources/Api/CertificateCollection.php') @@ -133,7 +133,7 @@ public function output_writes_namespaced_classes() $tree = $this->blueprint->analyze($tokens); $this->assertEquals([ - 'created' => ['app/Http/Resources/Api/CertificateCollection.php', 'app/Http/Resources/Api/Certificate.php'], + 'created' => ['app/Http/Resources/Api/CertificateCollection.php', 'app/Http/Resources/Api/CertificateResource.php'], ], $this->subject->output($tree)); } } diff --git a/tests/Feature/Lexers/StatementLexerTest.php b/tests/Feature/Lexers/StatementLexerTest.php index 958baedc..030eecfd 100644 --- a/tests/Feature/Lexers/StatementLexerTest.php +++ b/tests/Feature/Lexers/StatementLexerTest.php @@ -663,7 +663,7 @@ public function it_returns_a_resource_statement() $this->assertCount(1, $actual); $this->assertInstanceOf(ResourceStatement::class, $actual[0]); - $this->assertEquals('User', $actual[0]->name()); + $this->assertEquals('UserResource', $actual[0]->name()); $this->assertEquals('user', $actual[0]->reference()); $this->assertFalse($actual[0]->collection()); $this->assertFalse($actual[0]->paginate()); diff --git a/tests/fixtures/controllers/api-routes-example.php b/tests/fixtures/controllers/api-routes-example.php index 073cdd1a..65d81a3b 100644 --- a/tests/fixtures/controllers/api-routes-example.php +++ b/tests/fixtures/controllers/api-routes-example.php @@ -6,8 +6,8 @@ use App\Http\Controllers\Controller; use App\Http\Requests\Api\CertificateStoreRequest; use App\Http\Requests\Api\CertificateUpdateRequest; -use App\Http\Resources\Api\Certificate as CertificateResource; use App\Http\Resources\Api\CertificateCollection; +use App\Http\Resources\Api\CertificateResource; use Illuminate\Http\Request; class CertificateController extends Controller @@ -25,7 +25,7 @@ public function index(Request $request) /** * @param \App\Http\Requests\Api\CertificateStoreRequest $request - * @return \App\Http\Resources\Api\Certificate + * @return \App\Http\Resources\Api\CertificateResource */ public function store(CertificateStoreRequest $request) { @@ -37,7 +37,7 @@ public function store(CertificateStoreRequest $request) /** * @param \Illuminate\Http\Request $request * @param \App\Certificate $certificate - * @return \App\Http\Resources\Api\Certificate + * @return \App\Http\Resources\Api\CertificateResource */ public function show(Request $request, Certificate $certificate) { @@ -47,7 +47,7 @@ public function show(Request $request, Certificate $certificate) /** * @param \App\Http\Requests\Api\CertificateUpdateRequest $request * @param \App\Certificate $certificate - * @return \App\Http\Resources\Api\Certificate + * @return \App\Http\Resources\Api\CertificateResource */ public function update(CertificateUpdateRequest $request, Certificate $certificate) { diff --git a/tests/fixtures/controllers/certificate-controller.php b/tests/fixtures/controllers/certificate-controller.php index beb7c56d..85bd9a89 100644 --- a/tests/fixtures/controllers/certificate-controller.php +++ b/tests/fixtures/controllers/certificate-controller.php @@ -5,8 +5,8 @@ use App\Certificate; use App\Http\Requests\CertificateStoreRequest; use App\Http\Requests\CertificateUpdateRequest; -use App\Http\Resources\Certificate as CertificateResource; use App\Http\Resources\CertificateCollection; +use App\Http\Resources\CertificateResource; use Illuminate\Http\Request; class CertificateController extends Controller @@ -24,7 +24,7 @@ public function index(Request $request) /** * @param \App\Http\Requests\CertificateStoreRequest $request - * @return CertificateResource + * @return \App\Http\Resources\CertificateResource */ public function store(CertificateStoreRequest $request) { @@ -36,7 +36,7 @@ public function store(CertificateStoreRequest $request) /** * @param \Illuminate\Http\Request $request * @param \App\Certificate $certificate - * @return CertificateResource + * @return \App\Http\Resources\CertificateResource */ public function show(Request $request, Certificate $certificate) { @@ -46,7 +46,7 @@ public function show(Request $request, Certificate $certificate) /** * @param \App\Http\Requests\CertificateUpdateRequest $request * @param \App\Certificate $certificate - * @return CertificateResource + * @return \App\Http\Resources\CertificateResource */ public function update(CertificateUpdateRequest $request, Certificate $certificate) { diff --git a/tests/fixtures/controllers/certificate-type-controller.php b/tests/fixtures/controllers/certificate-type-controller.php index 2874e635..f6841f73 100644 --- a/tests/fixtures/controllers/certificate-type-controller.php +++ b/tests/fixtures/controllers/certificate-type-controller.php @@ -5,8 +5,8 @@ use App\CertificateType; use App\Http\Requests\CertificateTypeStoreRequest; use App\Http\Requests\CertificateTypeUpdateRequest; -use App\Http\Resources\CertificateType as CertificateTypeResource; use App\Http\Resources\CertificateTypeCollection; +use App\Http\Resources\CertificateTypeResource; use Illuminate\Http\Request; class CertificateTypeController extends Controller @@ -24,7 +24,7 @@ public function index(Request $request) /** * @param \App\Http\Requests\CertificateTypeStoreRequest $request - * @return CertificateTypeResource + * @return \App\Http\Resources\CertificateTypeResource */ public function store(CertificateTypeStoreRequest $request) { @@ -36,7 +36,7 @@ public function store(CertificateTypeStoreRequest $request) /** * @param \Illuminate\Http\Request $request * @param \App\CertificateType $certificateType - * @return CertificateTypeResource + * @return \App\Http\Resources\CertificateTypeResource */ public function show(Request $request, CertificateType $certificateType) { @@ -46,7 +46,7 @@ public function show(Request $request, CertificateType $certificateType) /** * @param \App\Http\Requests\CertificateTypeUpdateRequest $request * @param \App\CertificateType $certificateType - * @return CertificateTypeResource + * @return \App\Http\Resources\CertificateTypeResource */ public function update(CertificateTypeUpdateRequest $request, CertificateType $certificateType) { diff --git a/tests/fixtures/controllers/custom-models-namespace.php b/tests/fixtures/controllers/custom-models-namespace.php index 768eff9f..eb97c6c1 100644 --- a/tests/fixtures/controllers/custom-models-namespace.php +++ b/tests/fixtures/controllers/custom-models-namespace.php @@ -4,8 +4,8 @@ use App\Http\Requests\TagStoreRequest; use App\Http\Requests\TagUpdateRequest; -use App\Http\Resources\Tag as TagResource; use App\Http\Resources\TagCollection; +use App\Http\Resources\TagResource; use App\Models\Tag; use Illuminate\Http\Request; @@ -24,7 +24,7 @@ public function index(Request $request) /** * @param \App\Http\Requests\TagStoreRequest $request - * @return TagResource + * @return \App\Http\Resources\TagResource */ public function store(TagStoreRequest $request) { @@ -36,7 +36,7 @@ public function store(TagStoreRequest $request) /** * @param \Illuminate\Http\Request $request * @param \App\Models\Tag $tag - * @return TagResource + * @return \App\Http\Resources\TagResource */ public function show(Request $request, Tag $tag) { @@ -46,7 +46,7 @@ public function show(Request $request, Tag $tag) /** * @param \App\Http\Requests\TagUpdateRequest $request * @param \App\Models\Tag $tag - * @return TagResource + * @return \App\Http\Resources\TagResource */ public function update(TagUpdateRequest $request, Tag $tag) { diff --git a/tests/fixtures/controllers/resource-statements.php b/tests/fixtures/controllers/resource-statements.php index 902222b7..d620bc08 100644 --- a/tests/fixtures/controllers/resource-statements.php +++ b/tests/fixtures/controllers/resource-statements.php @@ -2,8 +2,8 @@ namespace App\Http\Controllers; -use App\Http\Resources\User as UserResource; use App\Http\Resources\UserCollection; +use App\Http\Resources\UserResource; use App\User; use Illuminate\Http\Request; @@ -20,7 +20,7 @@ public function index(Request $request) /** * @param \Illuminate\Http\Request $request - * @return UserResource + * @return \App\Http\Resources\UserResource */ public function store(Request $request) { @@ -30,7 +30,7 @@ public function store(Request $request) /** * @param \Illuminate\Http\Request $request * @param \App\User $user - * @return UserResource + * @return \App\Http\Resources\UserResource */ public function show(Request $request, User $user) { diff --git a/tests/fixtures/resources/certificate.php b/tests/fixtures/resources/certificate.php index 2cdb029d..2277af5e 100644 --- a/tests/fixtures/resources/certificate.php +++ b/tests/fixtures/resources/certificate.php @@ -4,7 +4,7 @@ use Illuminate\Http\Resources\Json\JsonResource; -class Certificate extends JsonResource +class CertificateResource extends JsonResource { /** * Transform the resource into an array. diff --git a/tests/fixtures/resources/user.php b/tests/fixtures/resources/user.php index c7f372c1..28199cc9 100644 --- a/tests/fixtures/resources/user.php +++ b/tests/fixtures/resources/user.php @@ -4,7 +4,7 @@ use Illuminate\Http\Resources\Json\JsonResource; -class User extends JsonResource +class UserResource extends JsonResource { /** * Transform the resource into an array.