|
14 | 14 | namespace ApiPlatform\Tests\Action;
|
15 | 15 |
|
16 | 16 | use ApiPlatform\Action\ExceptionAction;
|
17 |
| -use ApiPlatform\Core\Metadata\Resource\Factory\ResourceMetadataFactoryInterface; |
18 |
| -use ApiPlatform\Core\Metadata\Resource\ResourceMetadata; |
19 |
| -use ApiPlatform\Tests\ProphecyTrait; |
20 | 17 | use ApiPlatform\Exception\InvalidArgumentException;
|
21 | 18 | use ApiPlatform\Metadata\ApiResource;
|
22 | 19 | use ApiPlatform\Metadata\Get;
|
23 | 20 | use ApiPlatform\Metadata\HttpOperation;
|
24 | 21 | use ApiPlatform\Metadata\Operations;
|
25 | 22 | use ApiPlatform\Metadata\Resource\Factory\ResourceMetadataCollectionFactoryInterface;
|
26 | 23 | use ApiPlatform\Metadata\Resource\ResourceMetadataCollection;
|
| 24 | +use ApiPlatform\Tests\ProphecyTrait; |
27 | 25 | use DomainException;
|
28 | 26 | use PHPUnit\Framework\TestCase;
|
29 | 27 | use Symfony\Bridge\PhpUnit\ExpectDeprecationTrait;
|
|
38 | 36 | * @author Amrouche Hamza <[email protected]>
|
39 | 37 | * @author Baptiste Meyer <[email protected]>
|
40 | 38 | *
|
41 |
| - * @group legacy |
42 | 39 | * @group time-sensitive
|
43 | 40 | */
|
44 | 41 | class ExceptionActionTest extends TestCase
|
@@ -69,62 +66,6 @@ public function testActionWithCatchableException()
|
69 | 66 | $this->assertTrue($response->headers->contains('X-Frame-Options', 'deny'));
|
70 | 67 | }
|
71 | 68 |
|
72 |
| - /** |
73 |
| - * @dataProvider provideOperationExceptionToStatusCases |
74 |
| - * @group legacy |
75 |
| - */ |
76 |
| - public function testLegacyActionWithOperationExceptionToStatus( |
77 |
| - array $globalExceptionToStatus, |
78 |
| - ?array $resourceExceptionToStatus, |
79 |
| - ?array $operationExceptionToStatus, |
80 |
| - int $expectedStatusCode |
81 |
| - ) { |
82 |
| - $this->expectDeprecation('Since api-platform/core 2.7: Use "ApiPlatform\Metadata\Resource\Factory\ResourceMetadataCollectionFactoryInterface" instead of "ApiPlatform\Core\Metadata\Resource\Factory\ResourceMetadataFactoryInterface".'); |
83 |
| - |
84 |
| - $exception = new DomainException(); |
85 |
| - $flattenException = FlattenException::create($exception); |
86 |
| - |
87 |
| - $serializer = $this->prophesize(SerializerInterface::class); |
88 |
| - $serializer->serialize($flattenException, 'jsonproblem', ['statusCode' => $expectedStatusCode])->willReturn(''); |
89 |
| - |
90 |
| - $resourceMetadataFactory = $this->prophesize(ResourceMetadataFactoryInterface::class); |
91 |
| - $resourceMetadataFactory->create('Foo')->willReturn(new ResourceMetadata( |
92 |
| - 'Foo', |
93 |
| - null, |
94 |
| - null, |
95 |
| - [ |
96 |
| - 'operation' => null !== $operationExceptionToStatus ? ['exception_to_status' => $operationExceptionToStatus] : [], |
97 |
| - ], |
98 |
| - null, |
99 |
| - null !== $resourceExceptionToStatus ? ['exception_to_status' => $resourceExceptionToStatus] : [] |
100 |
| - )); |
101 |
| - |
102 |
| - $exceptionAction = new ExceptionAction( |
103 |
| - $serializer->reveal(), |
104 |
| - [ |
105 |
| - 'jsonproblem' => ['application/problem+json'], |
106 |
| - 'jsonld' => ['application/ld+json'], |
107 |
| - ], |
108 |
| - $globalExceptionToStatus, |
109 |
| - $resourceMetadataFactory->reveal() |
110 |
| - ); |
111 |
| - |
112 |
| - $request = new Request(); |
113 |
| - $request->setFormat('jsonproblem', 'application/problem+json'); |
114 |
| - $request->attributes->replace([ |
115 |
| - '_api_resource_class' => 'Foo', |
116 |
| - '_api_item_operation_name' => 'operation', |
117 |
| - ]); |
118 |
| - |
119 |
| - $response = $exceptionAction($flattenException, $request); |
120 |
| - |
121 |
| - $this->assertSame('', $response->getContent()); |
122 |
| - $this->assertSame($expectedStatusCode, $response->getStatusCode()); |
123 |
| - $this->assertTrue($response->headers->contains('Content-Type', 'application/problem+json; charset=utf-8')); |
124 |
| - $this->assertTrue($response->headers->contains('X-Content-Type-Options', 'nosniff')); |
125 |
| - $this->assertTrue($response->headers->contains('X-Frame-Options', 'deny')); |
126 |
| - } |
127 |
| - |
128 | 69 | /**
|
129 | 70 | * @dataProvider provideOperationExceptionToStatusCases
|
130 | 71 | */
|
|
0 commit comments