create([ 'NO_ART' => 10001, 'DENOM_LEG' => 'Poulet RĂ´ti 1kg', ]); // WHEN /** @var \Illuminate\Testing\TestResponse<\Symfony\Component\HttpFoundation\Response> $response */ $response = $test->getJson('/api/v1/inco-sheets'); // THEN $response->assertStatus(200); $response->assertValidRequest(); $response->assertValidResponse(200); }); it('validates GET /api/v1/inco-sheets list response with brands filter against openapi spec', function (): void { // GIVEN /** @var \Tests\TestCase $test */ $test = $this; // WHEN /** @var \Illuminate\Testing\TestResponse<\Symfony\Component\HttpFoundation\Response> $response */ $response = $test->getJson('/api/v1/inco-sheets?brands=LGL01&brands=MCQ01'); // THEN $response->assertStatus(200); $response->assertValidRequest(); $response->assertValidResponse(200); }); it('validates GET /api/v1/inco-sheets list response with bracket brands filter against openapi spec', function (): void { // GIVEN /** @var \Tests\TestCase $test */ $test = $this; // WHEN /** @var \Illuminate\Testing\TestResponse<\Symfony\Component\HttpFoundation\Response> $response */ $response = $test->getJson('/api/v1/inco-sheets?brands[]=LGL01'); // THEN $response->assertStatus(200); $response->assertValidRequest(); $response->assertValidResponse(200); }); it('validates GET /api/v1/inco-sheets/{incoId} detail response against openapi spec', function (): void { // GIVEN /** @var \Tests\TestCase $test */ $test = $this; IncoFactory::new()->create([ 'NO_ART' => 10003, 'DENOM_LEG' => 'Lasagnes Bolognaise 400g', ]); // WHEN /** @var \Illuminate\Testing\TestResponse<\Symfony\Component\HttpFoundation\Response> $response */ $response = $test->getJson('/api/v1/inco-sheets/10003'); // THEN $response->assertStatus(200); $response->assertValidRequest(); $response->assertValidResponse(200); }); it('validates GET /api/v1/inco-sheets/{incoId} not found response against openapi spec', function (): void { // GIVEN /** @var \Tests\TestCase $test */ $test = $this; $unexistingId = '9999999'; // WHEN /** @var \Illuminate\Testing\TestResponse<\Symfony\Component\HttpFoundation\Response> $response */ $response = $test->getJson("/api/v1/inco-sheets/{$unexistingId}"); // THEN $response->assertStatus(404); $response->assertValidRequest(); $response->assertValidResponse(404); }); it('validates GET /api/v1/inco-sheets/search response against openapi spec', function (): void { // GIVEN /** @var \Tests\TestCase $test */ $test = $this; $query = urlencode('%10004%'); IncoFactory::new()->create([ 'NO_ART' => 1000401, 'DENOM_LEG' => 'Pizza Quatre Fromages', ]); // WHEN /** @var \Illuminate\Testing\TestResponse<\Symfony\Component\HttpFoundation\Response> $response */ $response = $test->getJson("/api/v1/inco-sheets/search?incoIdLike={$query}"); // THEN $response->assertStatus(200); $response->assertValidRequest(); $response->assertValidResponse(200); }); });